我正在使用 ExtJS,并且我有一个文本字段组件。我只想禁用inputEl
文本字段组件(而不是标签)。
如果我使用setDisabled()
文本字段的方法,那么它设置禁用inputEl
但也标签。
我也使用过该setReadOnly()
方法,但它不会将 . 设置为灰色inputEl
,仅设置为ReadOnly
.
有没有办法只禁用inputEl
一个文本字段组件?
谢谢你的帮助。
我正在使用 ExtJS,并且我有一个文本字段组件。我只想禁用inputEl
文本字段组件(而不是标签)。
如果我使用setDisabled()
文本字段的方法,那么它设置禁用inputEl
但也标签。
我也使用过该setReadOnly()
方法,但它不会将 . 设置为灰色inputEl
,仅设置为ReadOnly
.
有没有办法只禁用inputEl
一个文本字段组件?
谢谢你的帮助。
您必须将自定义类设置为disabledCls
.ux-item-disabled .x-form-field, .ux-item-disabled .x-form-display-field, .ux-item-disabled .x-form-trigger {
filter: alpha(opacity=30);
opacity: .3;
}
我从 Sencha 论坛得到了另一个答案(我认为在这里发布它可能也很有趣) 解决方案:
使用setOpacity方法
Ext.onReady(function () {
var panel =Ext.create('Ext.form.Panel', {
title: 'Basic Form',
renderTo: Ext.getBody(),
bodyPadding: 5,
width: 350,
items: [{
xtype: 'textfield',
fieldLabel: 'Field',
name: 'theField',
disabled: true
}]
});
panel.down('[xtype=textfield]').labelEl.setOpacity(1); });
这个如何?
items: [{
xtype: 'textfield',
name: 'item',
itemId: 'item',
readOnly: true,
listeners:{
afterrender: function(f){
c.inputEl.addCls('x-item-disabled');
}
}]
如果你在应用类之前包含一个 if ,你甚至可以让它发生变化