使用jQuery验证我使用了.ADDMETHOD添加正则表达式。如果未检查复选框,我也有一个规则,则需要填写元素并符合正则表达式。
nopreviousemployer是复选框的ID,如果检查了,则不应显示任何验证消息,如果未检查,则将显示所需的消息,如果输入中有数据,则应运行REGEX
$.validator.addMethod("regex", function (value, element, regexpr) {
return regexpr.test(value);
}, "");
rules:{
EndSalary1:{
required: '#noPreviousEmployers:unchecked',
regex: /^$?[0-9]{1,3}(,?d{3})?(,?d{3})?(.[0-9]{2})?$/
}
},
messages:{
EndSalary1:{
required: "Required Field",
regex: "Format As US Currency"
}
}
我什至尝试过这个
$.validator.addMethod("regex", function (value, element, regexpr) {
if(value.length != 0){
return regexpr.test(value);
}
}, "");
当我检查检查复选框时,该字段中没有数据时,它将显示REGEX验证的消息。它不应在这种情况下显示任何内容。
您不需要为任何新的regex
模式编写自定义规则。additional-methods.js
文件中已经有一个默认规则,称为pattern
,该文件将正则态度作为其参数。
rules:{
EndSalary1:{
required: '#noPreviousEmployers:unchecked',
pattern: /^$?[0-9]{1,3}(,?d{3})?(,?d{3})?(.[0-9]{2})?$/
}
}
demo :jsfiddle.net/mrf5ja4d/