Css 在运行时更改fieldCls

Css 在运行时更改fieldCls,css,extjs,extjs4.1,Css,Extjs,Extjs4.1,我试图在运行时使用ExtJS4.1更改文本字段的css 我已经使用fieldCls:“”设置了初始css,效果很好 但是,使用addCls和removeCls与fieldCls无关,只会更改根元素的css,而不会更改字段 在运行时更改文本字段的css类的正确方法是什么 谢谢 编辑:也许该编写一些代码了: this.form.getComponent('content').on('writeablechange', function(field, Read, eOpts){

我试图在运行时使用ExtJS4.1更改文本字段的css

我已经使用fieldCls:“”设置了初始css,效果很好

但是,使用addCls和removeCls与fieldCls无关,只会更改根元素的css,而不会更改字段

在运行时更改文本字段的css类的正确方法是什么

谢谢

编辑:也许该编写一些代码了:

        this.form.getComponent('content').on('writeablechange', function(field, Read, eOpts){
            if (Read == true){
              field.inputEl.addCls('x-form-field-readonly');

            }

            else if (Read == false){

            }

        }, this);
让我们暂时忽略一个事实,即我无法使用我遇到的任何配置属性获得一个只读字段来更新css

此代码将执行,并在我将每个案例放入时显示它们的警报


我尝试了field.inputEl,但在运行时未定义。有什么想法吗?

如果要在字段上设置样式,可以使用field.setFieldStyle()。否则,field.inputEl就是您需要的元素。

我认为有多种方法可以实现这一点。你能不能先试试
SomeField.inputEl.addCls()
。别介意我的编辑,它是未定义的,因为该字段还没有渲染。inputEl工作得很好,非常感谢你自己和Izhaki!