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

时间:2017-03-28 09:44:32

标签: extjs

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

例如代码:

xtype: 'textfield',
labelWidth : 250,
fieldStyle: 'background-color : #F5A9A9',
vtype :  'email',
fieldLabel: 'email address'

1 个答案:

答案 0 :(得分: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");
           }
        }
    }

我为你创造了一个小提琴。请看一看。 Working Fiddle

另外,我附加了Vtype的文档,可以帮助您正确理解。 Doc