满足条件时更改字段的颜色

San*_*Arv 5 extjs

例如,我有输入类型为'email'的文本字段.我已将字段的默认颜色设置为粉红色.如果输入是正确的电子邮件格式,我希望文本字段的颜色更改为白色.我怎么做?

例如代码:

xtype: 'textfield',
labelWidth : 250,
fieldStyle: 'background-color : #F5A9A9',
vtype :  'email',
fieldLabel: 'email address'
Run Code Online (Sandbox Code Playgroud)

UDI*_*DID 7

在这种情况下,首先我们需要检查天气输入值是否是电子邮件.为此我们正在使用 var fieldValidation = Ext.form.field.VTypes.email(val); 如果fieldValidation为true,那么它的输入值是一封电子邮件.一旦我们验证了输入值,我们就会改变背景颜色.this.setFieldStyle("background-color : #FFFFFF")

你的代码会喜欢:

    {
        xtype: 'textfield',
         fieldStyle: 'background-color : #F5A9A9',
        vtype :  'email',
        fieldLabel: 'email address',
        validator : function(val){
        var fieldValidation =  Ext.form.field.VTypes.email(val);
           if(fieldValidation == true){
              this.setFieldStyle("background-color : #FFFFFF");
           }
        }
    }
Run Code Online (Sandbox Code Playgroud)

我为你创造了一个小提琴.请看一看.工作小提琴.

另外,我附上了Vtype的文档,可以帮助您正确理解.文件

  • 很有帮助.并感谢文档 (2认同)