extjs 不是模式的TextField条件

njthzxwz  于 2022-11-04  发布在  其他
关注(0)|答案(2)|浏览(126)

我是ExtJS的新手。考虑下面的文本字段声明:

{
    xtype: 'textfield',
    id:'lcfirstname',
    name: 'lcfirstname',
    maxLength: 100,
    regex: '/^\s*[a-zA-Z0-9-_]*$/'
}

我可以根据模式编写一个模式,所有的内容都可以在文本字段中键入。但是我需要在文本字段中编写模式,这样文本字段就不应该采用这些模式。
(i.e.不是正则表达式,就像EXT JS中有什么东西吗?)。模式可以包括所有特殊符号。
这里需要帮助!!

sg2wtvxw

sg2wtvxw1#

有两个选项可解决此问题:

  • 您可以使用regex:
{
    xtype: 'textfield',
    id:'lcfirstname',
    name: 'lcfirstname',
    maxLength: 100,
    regex: /^(?!.*[a-zA-Z0-9-_])/
}
  • 或者您可以编写一个自定义验证器:
{
    xtype: 'textfield',
    id:'lcfirstname',
    name: 'lcfirstname',
    maxLength: 100, 
    invalidChars: '[a-z]',
    validator: function(value) {
        var me = this;            
        return new RegExp('^(?!.*' + me.invalidChars + ')' ).test(value);
    }    
}
p8ekf7hl

p8ekf7hl2#

选择了前三个字母字符,然后不包括其他最后字符
正则表达式:

/^[a-zA-Z0-9]{3,}(?!.*[~`@#$%^={}*:;,.<>+?½£|])/

相关问题