做网站的时候,常常会涉及到各种表单验证。选择一款好用的表单验证插件,会降低表单验证开发的难度。在开发中,我目前使用的表单验证插件是:validator.js. validator.js 是一款轻量的表单验证插件,代码总共只有两百多行。
validator.js 是一款基于 zepto/jQuery 的表单验证插件,当 zepto.js 和 jQuery 同时加载在页面里面的时候,validator.js 会优先作用于 jQuery. 下面的代码说明了为啥 validator.js 会优先作用于 jQuery:
1 (function($){ 2 /* 3 一些代码 4 */ 5 $.fn.validator=function(){ 6 7 }; 8 })(jQuery|zepto);
既然 validator.js 的 validator 方法挂载了 $.fn 上,那么 validator.js 就可以被 jQuery/Zepto 的实例所使用.使用 的代码如下:
1 $('#form_id').validator(options);
validator
方法支持一个 options
对象作为参数。当不传参数时,options
具备默认值。参数储存在 $('').data('__options__')
。完整的对象如下描述:
1 options = { 2 // 需要校验的表单项,(默认是 `[required]`),支持任何 jQuery 选择器可以选择的标识 3 identifie: {String}, 4 5 // 校验不通过时错误时添加的 class 名(默认是 `error`),当校验为空时,还同时拥有 `empty` 这个 classname 6 klass: {String}, 7 8 // 错误出现时 `klass` 放在当前表单项还是父节点(默认是当前表单项) 9 isErrorOnParent: {Boolean}, 10 11 // 触发表单项校验的方法,当是 false 在点 submit 按钮之前不校验(默认是 `blur`) 12 method: {String | false}, 13 14 // 出错时的 callback,第一个参数是所有出错表单项集合 15 errorCallback(unvalidFields): {Function}, 16 17 before: {Function}, // 表单检验之前 18 after: {Function}, // 表单校验之后,只有 __return true__ 才会提交表单 19 }