jquery validate初体验

来源:互联网 发布:电动缝纫机电机数据 编辑:程序博客网 时间:2024/06/14 13:33

转载:http://blog.sina.com.cn/s/blog_78106bb1010148dy.html

<html>
<head>
    <title></title>
    <script src="../Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>   
    <script src="../Scripts/jquery.validate.js" type="text/javascript"></script>
    <script src="../Scripts/jquery.metadata.js" type="text/javascript"></script>
    <script type="text/javascript">
        $(document).ready(function () {

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


            $("#signupForm").validate({
                rules: {
                    firstname: "required",
                   ybno: {
                        isZipCode: true
                    },
                    email: {
                        required: true,//表示不得为空
                        email: true//自带邮箱验证
                    },
                    password: {
                        required: true,
                        minlength: 5 //自带判断字符最小长度
                    },
                    confirm_password: {
                        required: true,
                        minlength: 5,
                        equalTo: "#password" 

                      //自带判断当前文本框值与指定ID为password的文本框的值是否相同
                    }
                },
                messages: {
                    firstname: "请输入姓名",
                    email: {
                        required: "请输入Email地址",
                        email: "请输入正确的email地址"
                    },
                    password: {
                        required: "请输入密码",
                        minlength: jQuery.format("密码不能小于{0}个字符")
                    },
                    confirm_password: {
                        required: "请输入确认密码",
                        minlength: "确认密码不能小于5个字符",
                        equalTo: "两次输入密码不一致不一致"
                    }
                }
            });
        });
       
    </script>

   //错误提示信息的样式

  <style type="text/css">
    label.error{color: Red;padding-left: 20px; border:1px solid #006655; margin-left:10px; 

                 padding-left:0px; font-size:12px;}
    input.error{border: solid 1px red;}
  </style>

</head>
<body>
<form id="signupForm" method="get" action=""> 
<p> 
<label for="firstname">Firstname</label> 
<input id="firstname" name="firstname" /> 
</p> 
<p> 
<label for="ybno">邮编</label> 
<input id="ybno" name="ybno" /> 
</p>
<p> 
<label for="email">E-Mail</label> 
<input id="email" name="email" /> 
</p> 
<p> 
<label for="password">Password</label> 
<input id="password" name="password" type="password" /> 
</p> 
<p> 
<label for="confirm_password">确认密码</label> 
<input id="confirm_password" name="confirm_password" type="password" /> 
</p> 
<p> 
<input class="submit" type="submit" value="Submit"/> 
</p> 
</form> 
</body>
</html>

 

解释:

addMethod的第一个参数,就是添加的验证方法的名字,这个名字是可以随意命名的
addMethod的第三个参数,就是自定义的错误提示,

addMethod的第二个参数,是一个函数,这个比较重要,决定了用这个验证方法时的写法
如果只有一个参数,直接写,如果isZipCode:"1"那么a就是这个唯一的参数,

如果多个参数,用在[]里,用逗号分开isZipCode:["1","5"]。
function(value,element,param)里有三个参数:

value是元素的值,也就是要验证的信息,如上例:就是ID等于ybno里的值(红字部分)

element是元素本身,

param是参数,