`
longgangbai
  • 浏览: 7325723 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

jquery validate.addMethod 正则表达式 (自定义验证方法)

阅读更多

 

  项目中使用的jQuery添加的校验的方法

$(document).ready(function(){       
  5         
  6/**//* 设置默认属性 */       
  7$.validator.setDefaults({       
  8    submitHandler: function(form) {    
  9        form.submit();    
 10    }
       
 11}
);   
 12  
 13// 字符验证       
 14jQuery.validator.addMethod("stringCheck"function(value, element) {       
 15    return this.optional(element) || /^[\u0391-\uFFE5\w]+$/.test(value);       
 16}
"只能包括中文字、英文字母、数字和下划线");   
 17  
 18// 中文字两个字节       
 19jQuery.validator.addMethod("byteRangeLength"function(value, element, param) {       
 20    var length = value.length;       
 21    for(var i = 0; i < value.length; i++){       
 22        if(value.charCodeAt(i) > 127){       
 23        length++;       
 24        }
       
 25    }
       
 26    return this.optional(element) || ( length >= param[0&& length <= param[1] );       
 27}
"请确保输入的值在3-15个字节之间(一个中文字算2个字节)");   
 28  
 29// 身份证号码验证       
 30jQuery.validator.addMethod("isIdCardNo"function(value, element) {       
 31    return this.optional(element) || isIdCardNo(value);       
 32}
"请正确输入您的身份证号码");

 33     
 34// 手机号码验证       
 35jQuery.validator.addMethod("isMobile"function(value, element) {       
 36    var length = value.length;   
 37    var mobile = /^(((13[0-9]{1})|(15[0-9]{1}))+\d{8})$/;   
 38    return this.optional(element) || (length == 11 && mobile.test(value));       
 39}
"请正确填写您的手机号码");       
 40     
 41// 电话号码验证       
 42jQuery.validator.addMethod("isTel"function(value, element) {       
 43    var tel = /^\d{3,4}-?\d{7,9}$/;    //电话号码格式010-12345678   
 44    return this.optional(element) || (tel.test(value));       
 45}
"请正确填写您的电话号码");   
 46  
 47// 联系电话(手机/电话皆可)验证   
 48jQuery.validator.addMethod("isPhone"function(value,element) {   
 49    var length = value.length;   
 50    var mobile = /^(((13[0-9]{1})|(15[0-9]{1}))+\d{8})$/;   
 51    var tel = /^\d{3,4}-?\d{7,9}$/;   
 52    return this.optional(element) || (tel.test(value) || mobile.test(value));   
 53  
 54}
"请正确填写您的联系电话");   
 55     
 56// 邮政编码验证       
 57jQuery.validator.addMethod("isZipCode"function(value, element) {       
 58    var tel = /^[0-9]{6}$/;       
 59    return this.optional(element) || (tel.test(value));       
 60}
"请正确填写您的邮政编码");    
 61  
 62//开始验证   
 63$('#submitForm').validate({   
 64    /**//* 设置验证规则 */  
 65    rules: {   
 66        username: {   
 67            required:true,   
 68            stringCheck:true,   
 69            byteRangeLength:[3,15]   
 70        }
,   
 71        email:{   
 72            required:true,   
 73            email:true  
 74        }
,   
 75        phone:{   
 76            required:true,   
 77            isPhone:true  
 78        }
,   
 79        address:{   
 80            required:true,   
 81            stringCheck:true,   
 82            byteRangeLength:[3,100]   
 83        }
   
 84    }
,   
 85       
 86    /**//* 设置错误信息 */  
 87    messages: {   
 88        username: {       
 89            required: "请填写用户名",   
 90            stringCheck: "用户名只能包括中文字、英文字母、数字和下划线",   
 91            byteRangeLength: "用户名必须在3-15个字符之间(一个中文字算2个字符)"       
 92        }
,   
 93        email:{   
 94            required: "请输入一个Email地址",   
 95            email: "请输入一个有效的Email地址"  
 96        }
,   
 97        phone:{   
 98            required: "请输入您的联系电话",   
 99            isPhone: "请输入一个有效的联系电话"  
100        }
,   
101        address:{   
102            required: "请输入您的联系地址",   
103            stringCheck: "请正确输入您的联系地址",   
104            byteRangeLength: "请详实您的联系地址以便于我们联系您"  
105        }
   
106    }
,   
107       
108   /* 设置验证触发事件 */  
109    focusInvalid: false,   
110    onkeyup: false,   
111       
112    /**//* 设置错误信息提示DOM */  
113    errorPlacement: function(error, element) {       
114        error.appendTo( element.parent());       
115    }
,     
116       
117}
);   
118  
119});

 

 

supplier-commons-vacation.js

 

 //定义订单的公共的函数方法
 function define_common_method(){
 
    //设置默认的操作
     $.validator.setDefaults({   
     submitHandler: function(form) { form.submit(); }   
        });
  
     //添加自定义校验函数
     $.validator.addMethod("charNo",function(value,element) {   
    var length = value.length; 
    var your_tel =/[\W]/g;
    return this.optional(element) || (length<=8&&!your_tel.test(value));  
  },"请输入英文字符或数字!");
  
  //添加验证操作名称的校验函数
  $.validator.addMethod("charString",function(value,element) {   
      var length = value.length; 
      var your_tel =/[^\a-zA-Z\u4E00-\u9FA5]/g;
      var your_tel2=/^[A-Za-z]*$/;
      return this.optional(element) || (length<=20&&!your_tel.test(value));  
  },"请输入中文或英文名称"); 
  
  //验证手机号码(仅仅13和15开头)
  $.validator.addMethod("isPhone", function(value,element) {  
           var length = value.length;  
        var mobile = /^(((13[0-9]{1})|(15[0-9]{1}))+\d{8})$/;  
         var tel = /^\d{3,4}-?\d{7,9}$/;  
        return this.optional(element) || (tel.test(value) || mobile.test(value));  
         }, "请正确填写您的联系电话或者手机");  
  
 }

 

 

supplier-finance.js

jQuery(function($) {
 
 //绑定所有的事件
 $(document).ready(function() {
  bind_component_event();
 });
 
 
 //绑定的公共的事件
 function bind_component_event() {
    //定义一些公共的方法
    define_common_method();
  
    //环游供应商付款的验证(度假)  
    bind_checkCondition_component_event();
   
   
    //环游供应商付款验证的(供应商)
    bind_supplierConditionForm_component_event();
 }
 
 //环游供应商付款(度假)的验证  
 function bind_checkCondition_component_event() {
  
  //待收款款订单验证
  $("#checkConditionForm").validate({
   event: "submit",
   errorPlacement: function(error, element) {
   },
   rules:{
     "searchCon.accountNo":{
      charNo:true
     },
     "searchCon.supplierName":{
      charString:true
     }
    },
    messages:{
     "searchCon.accountNo":{
        charNo:"请输入正确的对账编号!"
       },
       "searchCon.supplierName":{
        charString:"请输入正确的供应商名称!"
       }
    },
   
    //设置验证触发事件
   focusInvalid:false,
   onkeyup:false,
           
         //设置错误信息提示DOM    
   errorPlacement:function(error,element){
      error.appendTo(element.parent());
   }
    
    
  });
 }
 //环游供应商付款的验证(供应商)  
 function bind_supplierConditionForm_component_event() {
  
  //待收款款订单验证
  $("#supplierConditionForm").validate({
   event: "submit",
   errorPlacement: function(error, element) {
   },
   rules:{
     "searchCon.accountNo":{
      charNo:true
     },
     "searchCon.supplierName":{
      charString:true
     }
    },
    messages:{
     "searchCon.accountNo":{
        charNo:"请输入正确的对账编号!"
       },
       "searchCon.supplierName":{
        charString:"请输入正确的供应商名称!"
       }
    },
   
    //设置验证触发事件
   focusInvalid:false,
   onkeyup:false,
           
         //设置错误信息提示DOM    
   errorPlacement:function(error,element){
      error.appendTo(element.parent());
   }
  });
 }
 
});

 

 

关于jQuery的校验的API

 

http://docs.jquery.com/Plugins/Validation/Validator/addMethod

 


http://www.shopxx.net/html/news/2009/1201/59.html

http://jquery.bassistance.de/api-browser/plugins.html

分享到:
评论
1 楼 liuweihug 2014-08-15  
jquery 解析正则表达式及常见的Regex规则和表达式 -
http://www.suchso.com/UIweb/jquery-Regex.html     

相关推荐

    jquery.validate.js jquery表单验证

    这通常是通过自定义验证规则实现的,可以利用正则表达式来匹配中文字符。 4. **表单验证**:表单验证是确保用户输入数据有效性和完整性的过程。`jQuery Validate` 提供了一种声明式的方式来设置验证规则,可以直接...

    jQuery validator addMethod 根据不同情况显示不同错误信息

    `jQuery validator addMethod`是jQuery Validation Plugin中的一个关键功能,允许开发者自定义验证方法。当你发现内置的验证规则不能满足特定需求时,可以利用这个方法创建自己的验证逻辑。下面我们将详细介绍其用法...

    详解jquery validate实现表单验证 (正则表达式)

    此外,还可以通过`jQuery.validator.addMethod()`添加自定义验证方法,`jQuery.validator.format()`格式化错误消息,`jQuery.validator.setDefaults()`修改默认设置,以及`jQuery.validator.addClassRules()`为具有...

    很强大jquery表单验证插件jquery.validate.js api.pdf

    如果内置的验证规则不能满足需求,`jQuery Validate`提供了`addMethod`函数,允许开发者添加自己的验证方法。例如,示例代码中的`iszipcode`方法就是一个自定义的邮政编码验证规则。 5. **便捷的错误消息显示**: ...

    Jquery Validate 正则表达式实用验证代码大全

    以下为引用内容: 代码如下:jQuery.validator.addMethod(“mobile”, function(value, element) { var length = value.length; var mobile = /^(((13[0-9]{1})|(15[0-9]{1}))+\d{8})$/ return this.optional(element...

    jquery.validate 扩展身份证校验方法

    根据给定的描述,我们可以看到一个名为`idCardNo`的自定义验证方法被添加到了`jQuery.validator`中。这个方法用于验证用户的身份证号码是否符合中国身份证号码的标准格式。 ### 方法实现原理 #### 方法定义 ```...

    Jquery常用正在表达式验证

    jQuery提供了多种方法进行表单验证,如`$.validator.addMethod()`,它允许开发者自定义验证规则。例如,我们可以创建一个验证邮箱地址的函数: ```javascript $.validator.addMethod("email", function(value, ...

    jquery input字符串验证(手机号码验证、字母数字验证) 带示列

    在jQuery中,我们可以使用`.val()`方法获取input元素的值,`.hasClass()`检查元素是否具有特定类,`.attr()`设置或获取属性值,以及`.regex()`插件进行正则表达式匹配。 二、手机号码验证 在中国,手机号码通常由11...

    jquery validate 自定义验证方法介绍 日期验证

    在jQuery Validate中,自定义验证方法的添加是通过$.validator.addMethod方法实现的。该方法接受三个参数:一个是方法的名称,一个是验证函数,还有一个是当验证失败时显示的错误信息。自定义验证方法可以在页面加载...

    jQuery Validate 相关参数及常用的自定义验证规则

    为了更全面地理解jQuery Validate插件,接下来将详细介绍它的一些核心参数、常用的自定义验证规则以及如何自定义验证方法。 首先,我们来了解jQuery Validate插件的相关参数。插件提供了一套默认的验证规则和错误...

    JQuery扩展插件Validate 5添加自定义验证方法

    示例如下: 代码如下: [removed] jQuery.validator.addMethod(“regex”, //addMethod第1个参数:方法名称 function(value, element, params) { //addMethod第2个参数:验证方法,参数(被验证元素的值,被验证元素,...

    jquery validate添加自定义验证规则(验证邮箱 邮政编码)

    jQuery Validate插件提供了`$.validator.addMethod`方法用于添加自定义验证规则。这个方法接受三个参数:规则名称(name)、验证函数(method)和错误提示信息(message)。 首先,我们需要定义验证规则名称,比如...

    jq.validate文件 new

    5. 自定义验证:如果内置规则无法满足需求,可以通过`.addMethod()`创建新的验证方法。 四、正则表达式验证 jq.validate中内置了一些常用的正则表达式,如`email`、`url`、`number`等。开发者可以根据需要选择合适...

    jQuery.validationEngine 表单验证中文版

    除了内置的验证规则,jQuery.validationEngine还允许开发者自定义验证方法。通过`addMethod`函数,可以创建新的验证规则,满足特定业务需求。 总结来说,jQuery.validationEngine是一个功能强大且灵活的前端表单...

    jquery.validate使用攻略 第五步 正则验证

    在本文中,我们将深入探讨如何使用 jQuery Validate 插件中的正则表达式进行数据验证。jQuery Validate 是一个非常流行的插件,它可以帮助开发者快速实现表单验证功能,从而提高用户体验和减少服务器端的压力。本文...

    JS中常用的正则表达式

    以下收录一些我经常用到的正则表达式,因为工作场景中用到正则的地方几乎都跟validate插件的验证有关系,所以以下正则也是$.validator.addMethod() 的拓展: validate: http://jqueryvalidation.org/ 电话验证 /** ...

    jquery validate包

    此外,jQuery Validate插件还支持自定义验证方法,方便处理特定的验证需求。例如,我们想验证电话号码格式,可以这样定义: ```javascript $.validator.addMethod("phone", function(value, element) { return /^1...

    jquery.validate表单验证插件使用详解

    此外,jQuery Validate插件还支持自定义验证方法,可以通过`.addMethod()`扩展验证功能。例如,要验证年龄是否是18-80之间的整数,可以这样定义: ```javascript $.validator.addMethod("ageRange", function(value...

    基于Bootstrap+jQuery.validate实现表单验证

    开发者可以使用jQuery.validator.addMethod方法定义一个新的验证规则,然后在表单的rules对象中调用这个自定义的验证方法,并配置相应的错误提示信息。这样的做法既保证了验证的灵活性,也保证了用户输入的有效性。 ...

Global site tag (gtag.js) - Google Analytics