jQuery validate:如何为正则表达式验证添加规则? [英] jQuery validate: How to add a rule for regular expression validation?
问题描述
我正在使用 jQuery 验证插件.好东西!我想迁移我现有的ASP.NET解决方案以使用jQuery而不是ASP.NET验证器.我缺少正则表达式验证器的替代品.我希望能够做这样的事情:
I am using the jQuery validation plugin. Great stuff! I want to migrate my existing ASP.NET solution to use jQuery instead of the ASP.NET validators. I am missing a replacement for the regular expression validator. I want to be able to do something like this:
$("Textbox").rules("add", { regularExpression: "^[a-zA-Z'.\s]{1,40}$" })
如何添加自定义规则以实现这一目标?
推荐答案
感谢redsquare的回答,我添加了以下方法:
Thanks to the answer of redsquare I added a method like this:
$.validator.addMethod(
"regex",
function(value, element, regexp) {
var re = new RegExp(regexp);
return this.optional(element) || re.test(value);
},
"Please check your input."
);
现在您要做的就是针对任何正则表达式进行验证:
now all you need to do to validate against any regex is this:
$("#Textbox").rules("add", { regex: "^[a-zA-Z'.\\s]{1,40}$" })
此外,看起来还有一个名为extra-methods.js的文件,其中包含方法模式",使用不带引号的方法创建时,该文件可以是RegExp.
Additionally, it looks like there is a file called additional-methods.js that contains the method "pattern", which can be a RegExp when created using the method without quotes.
http://bassistance.de/jquery-plugins/jquery-plugin-validation /
http://ajax.aspnetcdn.com/ajax/jquery.validate/1.9/additional-methods.js
这篇关于jQuery validate:如何为正则表达式验证添加规则?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!