jQuery Validate添加自定义校验

jQuery Validate插件为表单提供了强大的验证功能,让客户端表单验证变得更简单,同时提供了大量的定制选项,满足应用程序各种需求。菜鸟教程里面介绍了一种添加自定义的方法,我再介绍另外的一种。

先下载jQuery Validate 的插件

菜鸟教程提供的 1.14.0 版本下载地址:http://static.runoob.com/download/jquery-validation-1.14.0.zip

导入js库

第一种:菜鸟教程给的参考方案是:

addMethod(name,method,message) 添加一个新的验证方法。必须包括一个独一无二的名字,一个 JAVASCRIPT 的方法和一个默认的信息。

// 中文字两个字节
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] );   
}, $.validator.format("请确保输入的值在{0}-{1}个字节之间(一个中文字算2个字节)"));

// 邮政编码验证   
jQuery.validator.addMethod("isZipCode", function(value, element) {   
    var tel = /^[0-9]{6}$/;
    return this.optional(element) || (tel.test(value));
}, "请正确填写您的邮政编码");

第二种:

//比较时间
jQuery.validator.methods.compareDate = function(value, element, param) {
    var startDate = jQuery(param).val();
    var date1 = new Date(Date.parse(startDate.replace("-", "/")));
    var date2 = new Date(Date.parse(value.replace("-", "/")));
    return date1 <= date2;
};

第二个例子的作用是比较时间,value是当前元素的值,element是当前元素,param是传入的参数。

这种方式不需要些默认信息。

这两种使用的方法一样的,例如:

                 //添加框表单校验
                 $("#addForm").validate({
                     rules: {
                         startdate: {
                             required: true
                         },
                         enddate: {
                             required: true,
                             compareDate:"#startdate_add"
                         }
                     },
                     messages: {
                        startdate: {
                             required: "该项必填"                         },

                         enddate: {
                             required: "该项必填",
                             compareDate:"需要比开始时间大"
                         }
                     }
                 });

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值