您的位置:首页 > Web前端 > JQuery

自定义 jquery.validate.js 校验方法

2017-05-22 16:33 92 查看
博客参考:http://blog.csdn.net/yangxiaovip/article/details/21550145 

jquery.validate.js 是一个前端 form 表单校验插件,具体详情可以百度一下。

jquery.validate.js 不仅自身内置有封装一些常用的前端校验,还提供便捷的 自定义校验方法 进行拓展。

前端内置自带校验:

 

required:true               必填字段

remote:"check.php"           使用ajax方法调用check.php验证输入值

email:true                   输入内容必须为正确格式的电子邮件

url:true                     输入内容必须为正确格式的网址

date:true                   输入内容必须为正确格式的日期

只验证格式,不验证有效性

number:true                 输入内容必须为合法的数字(负数,小数)

digits:true                 输入内容必须为整数

creditcard:                 输入内容必须为合法的信用卡号

equalTo:"#field"           输入值必须和#field相同

accept: "gif|png|jpg" 输入拥有合法后缀名的字符串(上传文件的后缀),多个后缀之间用’|’隔开

maxlength:5                 输入长度最多是5的字符串(汉字算一个字符)

minlength:10               输入长度最小是10的字符串(汉字算一个字符)

rangelength:[5,10]         输入长度必须介于 5 和 10 之间的字符串")(汉字算一个字符)

range:[5,10]               输入值必须介于 5 和 10 之间

max:5                       输入值不能大于5
min:10                     输入值不能小于10

自定义校验方法:

//普通 正则验校验例子   :只允许输入中文或字母

$.validator.addMethod("chineseAndLetter", function(value, element) {
var score = /^[a-zA-Z\u4e00-\u9fa5]+$/;
return this.optional(element) || (score.test(value));
}, "请输入中文或字母");
// 根据脚本调用验证方法时设定参数进行辅助校验例子:校验输入内容的长度(中文算两个字节)   单个参数


jQuery.validator.addMethod("byteLength", function(value, element,param) {
var length ="";
var regu = "^[a-zA-Z\u4e00-\u9fa5]+$";
var re = new RegExp(regu);
if (value.search(re) != -1) {
length = value.replace(/[\u0391-\uFFE5]/g, "aa").length;
}
return this.optional(element)|| (length >= param);     //parm:js中调用该方法时传入的参数,例如:byteLength:4
}, $.validator.format("请至少输入 {0} 个字节内容(一个中文算2个字节)"));



//前端脚本传入多个参数

jQuery.validator.addMethod("byteRangeLength", function (value, element, param) {             var length = value.length;             for (var i = 0; i < value.length; i++) {                 if (value.charCodeAt(i) > 127) {                     length++;    
            }             }             return this.optional(element) || (length >= param[0] && length <= param[1]);   //前端脚本传入多个参数,param[0] 取第一个传入的参数;

//parm[1] 取传入的第二个参数

//前端脚本调用改方法:byteRangeLength: [2,10]

        }, $.validator.format("请确保输入的值在{0}-{1}个字节之间(一个中文字算2个字节)"));  


                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  jquery.validate.js
相关文章推荐