下面是我的正则表达式
方法。
$.validator.addMethod("regex", function (element, value, regexp) {
var re = new RegExp(regexp);
return this.optional(element) || re.test(value);
}, "Special Characters not permitted");
下面是我的规则
。
var rules = {
cname: {
required: true,
minlength: 8
//alphanumeric:true
//regex: "/^\w+$/i"
//uniqueCompnameName: true
}
}
当我将正则表达式传递给 regex 时,它根本不起作用。
最佳答案
尝试使用正则表达式而不是字符串来传递正则表达式
$.validator.addMethod("regexp", function (value, element, regexp) {
if (typeof regexp == 'string') {
regexp = new RegExp(regexp);
}
return this.optional(element) || regexp.test(value);
}, "Special Characters not permitted");
然后
name1: {
required: true,
regexp: '/^\w+$/'
},
name2: {
required: true,
regexp: /^\w+$/i
}
演示:Fiddle
关于javascript - jQuery 验证未按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23631487/