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