AK校验器介绍
由来:
AK校验器主要参照JQuery校验插件formValidator.js思路逐步演化出来的,2011年开始设计并完成基础代码,直到今天才迎来它的第一个1.0版本。
用途:
主要用来校验用户输入不规范数据以及提醒用户输入有误,一般用于B/S后台管理项目。
校验逻辑:
1.给用户提供一个校验对象AKCheckout,通过实例化这个对象之后,就可以*绑定(可以采用id,name,class三种方式绑定)N个输入框 (支持文本框、选择框等),并可以设置其它属性:校验规则-validType、是否必须输入-isRequired、 文本框为空时提示信息-emptyMsg、校验失败时提示信息-invalidMsg、 文本框默认值(后面说明4中有提到)-defaultValue、自定义正则(后面说明4中有提到)-expr、 给指定元素加上错误提示(后面说明4中有提到)-showElement、依赖输入框id(后面说明4中有提到)-dependId、 依赖值(后面说明4中有提到)-dependVal,带*属于必须设置的属性。
2.每个绑定的输入框都会被添加到AKCheckout对象的checkouts数组中
3.每当触发校验事件,就会循环checkouts数组,遍历每一个绑定的输入框,并获得他们的相关属性,校验顺序为:默认值校验、空值校验、正则校验、规则校验。
4.规则校验:用户可以选择自带规则或是自定义规则,所有的规则必需存放到一个数组中:ak_roles,它里面的元素类型为:AKRole对象,这个对象属性有: 规则名-key、规则函数-roleFunc(这个函数带有两个参数,一个是输入框的value、一个是范围或是另一个id名称;返回真假值)、规则校验失败的默认提示信息-msg。
5.每当校验不通过,就会调用$.AK.addInformation这个函数,给输入框添加错误提示信息,告诉用户数据无效之类的提示。
优点缺点:
优点:代码与页面元素完全隔离、校验一个输入框代码量非常少、提供一些常用校验规则基本满足需求、可以扩展自定义规则、支持多同类绑定name、class、提供源码供修改优化。
缺点:有CSS3,IE8以下提示信息样式比较不兼容
附件中提供本校验器的demo,有兴趣的童鞋可以看看!
校验效果图: