JS校验框架

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这个函数,给输入框添加错误提示信息,告诉用户数据无效之类的提示。


 优点缺点:

  1. 优点:代码与页面元素完全隔离、校验一个输入框代码量非常少、提供一些常用校验规则基本满足需求、可以扩展自定义规则、支持多同类绑定name、class、提供源码供修改优化。 


  2. 缺点:有CSS3,IE8以下提示信息样式比较不兼容


附件中提供本校验器的demo,有兴趣的童鞋可以看看!

校验效果图:

f70616c4-7f50-3942-84df-e9986e728de7.png


你可能感兴趣的:(js,校验器)