jquery Validate验证详解

1、导入js文件

<script src="jQuery.2.1.1.js" type="text/javascript"></script>
<script src="jquery.validate.js" type="text/javascript"></script>
<script src="messages_zh.js" type="text/javascript"></script>

2、默认校检规则

校检说明
required:true必输字段
remote:”remote-valid.jsp”使用ajax方法调用remote-valid.jsp验证输入值
email:true必须输入正确格式的电子邮件
url:true必须输入正确格式的网址
date:true必须输入正确格式的日期,日期校验ie6出错,慎用
dateISO:true必须输入正确格式的日期(ISO),例如:2009-06-23,1998/01/22 只验证格式,不验证有效性
number:true必须输入合法的数字(负数,小数)
digits:true必须输入整数
creditcard:true必须输入合法的信用卡号
equalTo:”#password”输入值必须和#password相同
accept:输入拥有合法后缀名的字符串(上传文件的后缀)
maxlength:5输入长度最多是5的字符串(汉字算一个字符)
minlength:10输入长度最小是10的字符串(汉字算一个字符)
rangelength:[5,10]输入长度必须介于 5 和 10 之间的字符串”)(汉字算一个字符)
range:[5,10]输入值必须介于 5 和 10 之间
max:5输入值不能大于5
min:10输入值不能小于10

3、使用方式

1、通过属性方式添加

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>在控件中设置验证规则</title>
<script type="text/javascript" src="js/jquery-2.1.1.js"></script>
<script type="text/javascript" src="js/jquery.validate.min.js"></script>
<script type="text/javascript" src="js/messages_zh.js"></script>
<script>
$(document).ready(() {
    $(#inputForm).validate();
});
</script>
</head>
<body>
<form id="inputForm" method="post" action="">
  <fieldset>
    <p>
      <label for="cname">Name (必需, 最小两个字母)</label>
      <input id="cname" name="name" minlength="2" type="text" required>
    </p>
    <p>
      <label for="cemail">E-Mail (必需)</label>
      <input id="cemail" type="email" name="email" required>
    </p>
    <p>
      <input class="submit" type="submit" value="Submit">
    </p>
  </fieldset>
</form>
</body>
</html>

2、metadata用法,将校验规则写到控件中
首先引用jquery.metadata.js

<!DOCTYPE HTML>
    <head>
        <base href="<%=basePath%>">

        <title>jQuery Validate验证框架详解-metadata用法</title>

        <meta http-equiv="pragma" content="no-cache">
        <meta http-equiv="cache-control" content="no-cache">
        <meta http-equiv="expires" content="0">
        <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
        <meta http-equiv="description" content="This is my page">
        <script type="text/javascript" src="js/jquery-2.1.1.js"></script>
<script type="text/javascript" src="js/jquery.validate.min.js"></script>
<script type="text/javascript" src="js/messages_zh.js"></script>
        <script type="text/javascript" src="js/jquery.metadata.min.js"></script>
    <script>
    $(document).ready(() {
        $(#inputForm).validate();
    });
    </script>
    </head>

    <body>
        <form id="inputForm" method="post" action="">
            <p>
                <label for="myname">用户名:</label>
                <!-- id和name最好同时写上 -->
                <input id="myname" name="myname" class="required" />
            </p>
            <p>
                <label for="email">E-Mail:</label>
                <input id="email" name="email" class="required email" />
            </p>
            <p>
                <label for="password">登陆密码:</label>
                <input id="password" name="password" type="password"
                    class="{required:true,minlength:5}" />
            </p>
            <p>
                <label for="confirm_password">确认密码:</label>
                <input id="confirm_password" name="confirm_password" type="password" class="{required:true,minlength:5,equalTo:'#password'}" />
            </p>
            <p>
                <label for="confirm_password">性别:</label>
                <!-- 表示必须选中一个 -->
                <input  type="radio" id="gender_male" value="m" name="gender" class="{required:true}" />
                <input  type="radio" id="gender_female" value="f" name="gender"/>
            </p>
            <p>
                <label for="confirm_password">爱好:</label>
                <!-- checkbox的minlength表示必须选中的最小个数,maxlength表示最大的选中个数,rangelength:[2,3]表示选中个数区间  -->
                <input type="checkbox" id="spam_email" value="email" name="spam[]" class="{required:true, minlength:2}" />
                <input type="checkbox" id="spam_phone" value="phone" name="spam[]" />
                <input type="checkbox" id="spam_mail" value="mail" name="spam[]" />
            </p>
            <p>
                <label for="confirm_password">城市:</label>
                <select id="jungle" name="jungle" title="Please select something!" class="{required:true}">
                    <option value=""></option>
                    <option value="1">厦门</option>
                    <option value="2">泉州</option>
                <option value="3">Oi</option>
            </select>
            </p>
            <p>
                <input class="submit" type="submit" value="立即注册" />
            </p>
        </form>
    </body>
</html>

3、使用Jquery.Validate进行验证方法

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>在控件中设置验证规则</title>
<script type="text/javascript" src="js/jquery-2.1.1.js"></script>
<script type="text/javascript" src="js/jquery.validate.min.js"></script>
<script type="text/javascript" src="js/messages_zh.js"></script>
<script>
$(document).ready(function () {

        $("#pageForm").validate({
            rules: {
                name : {
                        remote : "${ctx}/sys/user/checkLoginName?oldLoginName="
                                + encodeURIComponent('${user.loginName}')
                    },
                DictContent: { required: true, maxlength: 10 }
            },
            messages: {
                name : {
                    remote : "用户账号已存在"
                },
                DictContent: { required: "不能为空", maxlength: jQuery.format("不能超过{0}个字符") }
            },
            submitHandler: function (form) {
                loading('正在提交,请稍等...');
                form.submit();
            }
        })
})
</script>
</head>
<body>
<form id="inputForm" method="post" action="">
  <fieldset>
    <p>
      <label for="name">Name</label>
      <input id="name" name="name" type="text" class="form-control required">
    </p>
    <p>
      <label for="DictContent">DictContent</label>
      <input id="DictContent" name="DictContent" type="text" class="form-control ">
    </p>
    <p>
      <input class="submit" type="submit" value="Submit">
    </p>
  </fieldset>
</form>
</body>
</html>

4、添加自定义效验

js:
$(document).ready(
        function() {

        $.validator.addMethod("newPassword",
            function(value, element) {
                return this.optional(element)
                        || (/^[A-Za-z0-9]{8,}$/
                                .test(value) && /[A-Za-z].*[0-9]|[0-9].*[A-Za-z]/
                                .test(value));
            }, "密码由数字和字母组成,不少于8位!");
        });

html:
<input id="newPassword"
    name="newPassword" type="password" value="" maxlength="50"
    minlength="3"
    class="form-control newPassword ${empty user.id?'required':''}" />
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值