jquery validata js_表单验证

一、首先在加入函数 $("#login").validate()的时候要注意里面默认的规则,有很多是不需要加上去的,详见最后的例子;

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

二、导入jquery跟validate.js就不说了吧~~~

三、你在不写message自定义的时候,它会有默认提示,如下;

messages: {
    required: "This field is required.",
    remote: "Please fix this field.",
    email: "Please enter a valid email address.",
    url: "Please enter a valid URL.",
    date: "Please enter a valid date.",
    dateISO: "Please enter a valid date (ISO).",
    dateDE: "Bitte geben Sie ein g眉ltiges Datum ein.",
    number: "Please enter a valid number.",
    numberDE: "Bitte geben Sie eine Nummer ein.",
    digits: "Please enter only digits",
    creditcard: "Please enter a valid credit card number.",
    equalTo: "Please enter the same value again.",
    accept: "Please enter a value with a valid extension.",
    maxlength: $.validator.format("Please enter no more than {0} characters."),
    minlength: $.validator.format("Please enter at least {0} characters."),
    rangelength: $.validator.format("Please enter a value between {0} and {1} characters long."),
    range: $.validator.format("Please enter a value between {0} and {1}."),
    max: $.validator.format("Please enter a value less than or equal to {0}."),
    min: $.validator.format("Please enter a value greater than or equal to {0}.")
},

四、如果要修改的话这样就可以了;

jQuery.extend(jQuery.validator.messages, {
  required: "必选字段",
  remote: "请修正该字段",
  email: "请输入正确格式的电子邮件",
  url: "请输入合法的网址",
  date: "请输入合法的日期",
  dateISO: "请输入合法的日期 (ISO).",
  number: "请输入合法的数字",
  digits: "只能输入整数",
  creditcard: "请输入合法的信用卡号",
  equalTo: "请再次输入相同的值",
  accept: "请输入拥有合法后缀名的字符串",
  maxlength: jQuery.validator.format("请输入一个 长度最多是 {0} 的字符串"),
  minlength: jQuery.validator.format("请输入一个 长度最少是 {0} 的字符串"),
  rangelength: jQuery.validator.format("请输入 一个长度介于 {0} 和 {1} 之间的字符串"),
  range: jQuery.validator.format("请输入一个介于 {0} 和 {1} 之间的值"),
  max: jQuery.validator.format("请输入一个最大为{0} 的值"),
  min: jQuery.validator.format("请输入一个最小为{0} 的值")
});

五、下面是自己写的一个demo,里面注释写的很详细,应该没什么问题的

<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=11">
    <meta name="keywords" content="">
    <meta name="description" content="">
    <title id="title">jquery validata js_表单验证</title>
    <link type="text/css" rel="stylesheet" href="css/base.css">
    <style type="text/css">
        #login{width:500px;margin:100px auto;}
        #login li{padding: 5px 10px;}
        .sub{margin-left: 60px;cursor: pointer;}
        form .highlight{ background-color:#e2e2e2;}
        /*定义错误信息输出的样式*/
        .error{font-size: 10px;color: #cd0a0a;}
    </style>
</head>
<body>
<form method="post" action="" id="login">
    <ul>
        <li>
            <label>账户</label>
            <input type="text" name="email" class="required email" id="email"/>
            <br/>
        </li>
        <li>
            <label>密码</label>
            <input type="password" name="password" id="pass" class="required" minlength="6" maxlength="10"/>
        </li>
        <li>
            <input type="submit" name="sub" class="sub" id="sub"/>
        </li>
    </ul>
    <div id="messageBox"></div>
</form>
<script type="text/javascript" src="js/jquery-1.8.3.js"></script>
<script type="text/javascript" src="js/jquery.validate.min.js"></script>
<script>
    $(function() {
        // highlight
        var elements = $("input[type!='submit'], textarea, select");
        elements.focus(function() {              //只是跟li添加样式,跟validata无关
            $(this).parents('li').addClass('highlight');
        });
        elements.blur(function() {
            $(this).parents('li').removeClass('highlight');
        });
        $("#login").validate({
            debug:true,                            //debug:进行调试模式(表单不提交):
            ignore:".ignore",                       //对某些元素不进行验证
            errorLabelContainer: "#messageBox",       //显示错误信息的容器ID
            wrapper: "li",                            //包含每个错误信息的容器
            onsubmit:true,                         //是否提交时验证
            onfocusout:true,                        //是否在获取焦点时验证
            onclick:true,                          //是否在鼠标点击时验证(一般验证checkbox,radiobox)
            errorElement:"em",                          //errorElement String 默认:"label" 使用什么标签标记错误
//            errorClass:"invalid",                       //指定错误提示的css类名,可以自定义错误提示的样式  默认:"error"
//            highlight:'error',                            //可以给未通过验证的元素加效果,闪烁等
            success:"valid",
            submitHandler:function() { alert("Submitted!") },//要验证的元素通过验证后的动作,如果跟一个字符串,会当做一个css类,也可跟一个函数
            submitHandler:function(form) {
                $(form).ajaxSubmit();
            },
            rules: {                                        //自定义规则,key:value的形式,key是要验证的元素,value可以是字符串或对象
                    email: {                                //rule里面的东西可以写在input标签里面,也可以写在这里;
                        required:true,
                        email: true,
                        minlength:6
                    },
                    password: {
                        required: true
                    }
                 },
                messages: {                                 //自定义的提示信息key:value的形式key是要验证的元素,值是字符串或函数
                    email: {                             
                        required:"用户名为必填",
                        minlength:"用户名至少6个字符",
                        email:"请填写正确有效的邮箱"
                    },
                    password:{
                        required:"密码不能为空",
                        minlength:"密码不能小于6位数"
                    }
                }
            })
        })
</script>
</body>
</html>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值