基于jQuery的简单验证插件(开发点滴)
来源:互联网 发布:做账软件免费版 编辑:程序博客网 时间:2024/04/29 18:16
自己写的很简单很轻量的前台表单验证插件。
直接上代码:
(function($){ var defCheck = { "notnull": function(element){ return element && true; }, "ip": function(element){ var re = /^([0-9]|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.([0-9]|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.([0-9]|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.([0-9]|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])$/; return element && re.test(element); } } $.extend({ validation: function(param){ var elements; var checkArr = []; param && param instanceof Array ? elements = param : elements = []; for(var i=0;i<elements.length;i++){ var item = elements[i]; var element = item.element; var check, error; if(item.check && item.check instanceof Array){ checkArr = []; $(item.check).each(function(cIndex,cItem){ checkArr.push(checkFunc(cItem, element)); }); } else { checkArr = []; checkArr.push(checkFunc(item.check, element)); } if(item.error && typeof item.error == "function"){ error = item.error; }else if(item.error && typeof item.error == "string"){ error = function(){ $L.opmessage(item.error); } } for(var j=0;j<checkArr.length;j++){ if(!checkArr[j]){ error(); return false; } } } return true; } }); var checkFunc = function(itemCheck,element){ if(itemCheck && typeof itemCheck == "function"){ return itemCheck(element); } else if(itemCheck && typeof itemCheck == "string" && defCheck[itemCheck]){ return defCheck[itemCheck](element); } }})(jQuery);
使用示例:
/** 示例 * $.validation([ 需要验证的页面元素集合 * { * element: $("#element1").val(), 需验证的内容 * check: function(element){}, 自定义验证方法,返回假 调用error * error: function(){}, 自定义验证失败处理方法 * }, * { * element: $("#element2").attr("title"), * check: "notnull", 内置验证方法 * error: "用户名不能为空" 默认使用$L.opmessage()输出错误信息 * }, * { * element: $("#element2").attr("title"), * check: ["notnull","ip",function(element){}], 支持多验证 * error: "用户名不能为空" 默认使用$L.opmessage()输出错误信息 * } * ]) * * */
可在defCheck对象中添加属性来扩展内置验证方法
遗留问题:暂时还无法将验证和业务完全剥离
0 0
- 基于jQuery的简单验证插件(开发点滴)
- 基于jquery的验证插件
- jquery 插件式开发 点滴
- 基于jQuery的表单验证插件formValidator
- jValidate 基于jQuery的表单验证插件
- 基于Jquery的表单验证插件与日历插件
- 基于jquery的html5简单拖动插件
- 基于jQuery的简单全选插件
- jquery 验证插件简单原理
- 开发简单jquery插件
- 简单jQuery插件开发
- jQuery简单插件开发
- 基于jquery的表单验证插件,有兴趣请来指点一二
- 基于jQuery的表单验证插件Validation Engine
- 基于JQUERY的表单验证插件.原作者@…
- 基于Bootstrup的强大jQuery表单验证插件
- 基于Bootstrap的jQuery form表单验证插件
- 基于bootstrap3最好的jquery表单验证插件BootstrapValidator
- 设计模式六大原则
- Android 之高仿活动时分秒倒计时
- Python sys模块的常用方法
- Android PreferenceActivity简单使用
- Android startService和bindService的区别
- 基于jQuery的简单验证插件(开发点滴)
- 如何向myeclipse2014项目中引入ssh
- Don't click me
- 各数据库连接数据库中db.properties中的写法
- php获取两经纬度之间的距离
- 开发是妈妈、产品经理是爸爸、测试是医生、产品是孩子
- android 中MotionEvent中的getX(),getY()方法与getRawX(),getRawY的区别
- 如何真正的退出Android App
- Online Tracking by Learning Discriminative Saliency Map with Convolutional Neural Network