我有一个vtype试图检查名称如下:
99Balls SRL
My-Company S.A。
公司S.A。
我需要vtype只允许一个。或 - 或一次空间。所以,我 - 公司会返回假。
这就是我所做的,但它不起作用:
var alfanumericoTest = new RegExp('^[A-Za-z0-9]*-?\.? ');
Ext.apply(Ext.form.field.VTypes, {
// vtype validation function
alfanumerico: function(val, field) {
return alfanumericoTest.test(val);
},
// vtype Text property: The error text to display when the validation function returns false
alfanumericoText: 'Ingrese palabras.',
// vtype Mask property: The keystroke filter mask
alfanumericoMask: new RegExp('[A-Za-z0-9]|-|\.| ')
});
另外,这意味着什么?:
alfanumerico: function(val, field) {
return alfanumericoTest.test(val);
},
这是一个功能吗?它以我从未见过的方式宣布。
答案 0 :(得分:0)
我找到了解决方案,并为全局匹配添加了'g'修饰符。
// Alfanumerico
var alfanumericoTest = new RegExp('^[A-Za-z0-9]+\.?\-? ?','g');
Ext.apply(Ext.form.field.VTypes, {
// vtype validation function
alfanumerico: function(val, field) {
return alfanumericoTest.test(val);
},
// vtype Text property: The error text to display when the validation function returns false
alfanumericoText: 'Ingrese palabras.',
// vtype Mask property: The keystroke filter mask
alfanumericoMask: new RegExp('[A-Za-z0-9\-\.\ ]')
});