3

我正在使用 ExtJS,并且我有一个文本字段组件。我只想禁用inputEl文本字段组件(而不是标签)。

如果我使用setDisabled()文本字段的方法,那么它设置禁用inputEl但也标签。

我也使用过该setReadOnly()方法,但它不会将 . 设置为灰色inputEl,仅设置为ReadOnly.

有没有办法只禁用inputEl一个文本字段组件?

谢谢你的帮助。

4

3 回答 3

2

您必须将自定义类设置为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;
}

JSFiddle

于 2013-01-31T11:57:06.427 回答
0

我从 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); });
于 2013-02-04T08:53:50.997 回答
0

这个如何?

items: [{
  xtype: 'textfield',
  name: 'item',
  itemId: 'item',
  readOnly: true,
  listeners:{
    afterrender: function(f){
      c.inputEl.addCls('x-item-disabled');
    }
}]

如果你在应用类之前包含一个 if ,你甚至可以让它发生变化

于 2021-09-09T07:47:39.640 回答