首页 > Web开发 > 详细

[原创]jQuery Validation范例

时间:2014-04-19 15:42:38      阅读:550      评论:0      收藏:0      [点我收藏+]

上班无事,学习jQuery Validation,于是手写一公共范例,并收藏以便后用

验证操作类formValidatorClass.js

 

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

 

测试页index.html

 

bubuko.com,布布扣
bubuko.com,布布扣
 1bubuko.com,布布扣<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"   
 2bubuko.com,布布扣"http://www.w3.org/TR/html4/loose.dtd">  
 3bubuko.com,布布扣<html xmlns="http://www.w3.org/1999/xhtml">  
 4bubuko.com,布布扣    <head>  
 5bubuko.com,布布扣        <meta http-equiv="Content-Type" content="text/html; charset=gbk" />  
 6bubuko.com,布布扣        <title>jQuery验证</title>  
 7bubuko.com,布布扣        <script src="lib/jquery/jquery-1.3.2.min.js" ></script>  
 8bubuko.com,布布扣        <script type="text/javascript" src="lib/jquery/jquery.validate.js" mce_src="lib/jquery/jquery.validate.js"></script>  
 9bubuko.com,布布扣        <script type="text/javascript" src="lib/jquery/messages_cn.js"></script>  
10bubuko.com,布布扣        <script type="text/javascript" src="lib/jquery/formValidatorClass.js"></script>  
11bubuko.com,布布扣        <style type="text/css">
12bubuko.com,布布扣
13bubuko.com,布布扣        * {    
14bubuko.com,布布扣            font-family: Verdana;    
15bubuko.com,布布扣            font-size: 96%;    
16bubuko.com,布布扣        }
   
17bubuko.com,布布扣        label {    
18bubuko.com,布布扣            width: 10em;    
19bubuko.com,布布扣            float: left;    
20bubuko.com,布布扣        }
   
21bubuko.com,布布扣        label.error {    
22bubuko.com,布布扣            float: none;    
23bubuko.com,布布扣            color: red;    
24bubuko.com,布布扣            padding-left: .5em;    
25bubuko.com,布布扣            vertical-align: top;    
26bubuko.com,布布扣        }
   
27bubuko.com,布布扣        p {    
28bubuko.com,布布扣            clear: both;    
29bubuko.com,布布扣        }
   
30bubuko.com,布布扣        .submit {    
31bubuko.com,布布扣            margin-left: 12em;    
32bubuko.com,布布扣        }
   
33bubuko.com,布布扣        em {    
34bubuko.com,布布扣            font-weight: bold;    
35bubuko.com,布布扣            padding-right: 1em;    
36bubuko.com,布布扣            vertical-align: top;    
37bubuko.com,布布扣        }
   
38bubuko.com,布布扣           
39bubuko.com,布布扣
</style>
40bubuko.com,布布扣    </head>  
41bubuko.com,布布扣    <body>  
42bubuko.com,布布扣        <form class="submitForm" id="submitForm" method="get" action="">  
43bubuko.com,布布扣         <fieldset>  
44bubuko.com,布布扣           <legend>表单验证</legend>  
45bubuko.com,布布扣           <p>  
46bubuko.com,布布扣             <label for="username">用户名</label>  
47bubuko.com,布布扣             <em>*</em><input id="userName" name="username" size="25" />  
48bubuko.com,布布扣           </p>  
49bubuko.com,布布扣           <p>  
50bubuko.com,布布扣             <label for="email">E-Mail</label>  
51bubuko.com,布布扣             <em>*</em><input id="email" name="email" size="25" />  
52bubuko.com,布布扣           </p>  
53bubuko.com,布布扣           <p>  
54bubuko.com,布布扣             <label for="phone">联系电话</label>  
55bubuko.com,布布扣             <em>*</em><input id="phone" name="phone" size="25" value="" />  
56bubuko.com,布布扣           </p>  
57bubuko.com,布布扣           <p>  
58bubuko.com,布布扣             <label for="address">地址</label>  
59bubuko.com,布布扣             <em>*</em><input id="address" name="address" size="22">  
60bubuko.com,布布扣           </p>  
61bubuko.com,布布扣             <input class="submit" type="submit" value="提交"/>  
62bubuko.com,布布扣           </p>  
63bubuko.com,布布扣          </fieldset>  
64bubuko.com,布布扣         </form>  
65bubuko.com,布布扣    </body>  
66bubuko.com,布布扣</html>
bubuko.com,布布扣

[原创]jQuery Validation范例,布布扣,bubuko.com

[原创]jQuery Validation范例

原文:http://www.cnblogs.com/wangluochong/p/3674618.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!