背景: Jquery Validate在网上能够找到的资料都是固定一种验证方式,大家讨论的都是正则表达式如何写的问题。
在工作实践中,找到一个可以动态传入正则表达式的方法,跟大家共享下,希望能够抛砖引玉。
功能描述:
传入正则表达式,传入错误消息
详细
项目中规则都是自动定义的,当然比较简单。可以动态增加验证规则。复杂点的可以自己写正则表达式。话不多说看代码。
- jQuery.validator 加一个扩展
jQuery.validator.addMethod("diyCheck",function(value,element,param){ var abc= $(element); var diyRule = aa.attr('diyRule'); var exp = new RegExp(diyRule); return this.optional(element) || exp.test(value); } ,$.validator.format("{0}"));
2.html写法:
<input type="text" id="name" diyCheck="只能输入字母" diyRule="^[A-Za-z]+$" name="name" />
有待改进的是:
diyRule应同param传入方式,变成{1}不用多一个html的attr了。有大神来看看么?