• jquery之Validata表单验证


      需要jquery和jquery.Validata的包。

      

      一需要注意的是有时候表单错误提示的位置不是我们想要的,所以我们要去人为的干预:

      不满足校验规则,表单校验插件就会定义一个lable标签, 如果表单校验插件定义的lable标签不符合我们的要求,就要自己定义一个lale标签,让标签开始的时处于隐藏状态, for=”sex“ 通过name的属性值gender找到要校验的标签 generate=”true" 写上:那么就会自动在messages中获取填写错误是的提示信息 不写:就会默认使用lable标签中的错误提示信息

      二、自定义验证规则

        写在页面中加载事件的里边Validata函数的外边

        格式: 属性  函数

        $.validator.addMethod("校验规则名称",function(value,element,params){  .........})

        function:

          value:input标签的value属性值;文本输入框中用户输入的内容

          element:input标签对象

          params:自定义规则传递参数。

    下面是一些基本的校验规则和两个自定义校验规则(更多校验规则也可以去菜鸟教程的jquery中的jquery-validata自己去查看)

    (自定义校验规则是校验身份证号时)

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="utf-8">
        <title>jQuery validation plug-in - main demo</title>
        <link rel="stylesheet" href="css/screen.css">
        <script src="./js/jquery.min.js"></script>
        <script src="./js/jquery.validate.min.js"></script>
    
    
        <script>
            $().ready(function() {
                $.validator.addMethod("sfidnum",function(value,element,params){
                    if (value.length!=18){
                        return false;
                    }
                    return true;
    
                });
                $.validator.addMethod("sfid",function(value,element,params){
                    var reg = /^[0-9]{17}[0-9X]$/
                    if (value.length=18){
                        return reg.test(value);
                    }
                    return true;
    
                });
    
                    $("#test").validate({
    
                    submitHandler:function(form){
                        alert("提交事件!");
                        form.submit();
                    },
    
                        rules:{
                        username:{
                            required:true,
                            rangelength:[3,5]
                        },
                        password:{
                            required:true,
                            minlength:5
                        },
                        repassword:{
                            required:true,
                            minlength:5,
                            //通过id来与密码比较是否相同
                            equalTo:"#password"
                        },
                        sex:"required",
                        age:{
                            required:true,
                            //rang指的是数字的大小,而rangelength指的是长度
                            range:[26,45],
                            //年龄必须是整数
                            digits:true
                        },
                        bir:{
                            required:true,
                            //必须满足日期格式YYYY-MM-dd
                            dateISO:true,
                            //检验日期的有效性
                            date:true
                        },
                        sid:{
                                required:true,
                                sfidnum:true,
                                sfid:true
                            }
    
                    },
                    messages:{
                        username:{
                            required:"不能为空",
                            rangelength:"3到5位"
                        },
                        password:{
                            required:"必须填写",
                            minlength:"长度不能小于5"
                        },
                        repassword:{
                            required:"不能为空",
                            minlength:"长度不能小于5",
                            equalTo:"与密码不同,请在此输入!"
                        },
                        sex:"必选其一",
                        age:{
                            required:"不能为空",
                            //rang指的是数字的大小,而rangelength指的是长度
                            range:"年龄必须在26到45岁之间",
                            //年龄必须是整数
                            digits:"年龄必须是则整数"
                        },
                        bir:{
                            required:"不能为空",
                            //必须满足日期格式YYYY-MM-dd
                            dateISO:"请按YYYY-MM-dd的日期格式书写",
                            date:"日期不正确"
                        },
                        sid:{
                            required:"不能为空",
                            sfidnum:"18位",
                            sfid:"只有最后一位可以是x"
                        }
    
                    }
                });
            });
        </script>
    
    </head>
    <body>
    
    <div id="main">
        <form    name="test" id="test"    method="post" action="test.jsp">
            <div>
                <label>姓名</label>
                <input type="text" name="username" >
            </div>
            <div>
                <label>密码</label>
                <input type="password" id="password" name="password" >
            </div>
            <div>
                <label>重复密码</label>
                <input type="password" name="repassword" >
            </div>
            <div>
                <label>性别:</label>
                <input type="radio" name="sex"  value="男"><input type="radio" name="sex"  value="女"><!--
                    不满足校验规则,表单校验插件就会定义一个lable标签,
                    如果表单校验插件定义的lable标签不符合我们的要求,就要自己定义一个lale标签,让标签开始的时处于隐藏状态,
                    for=”sex“ 通过name的属性值gender找到要校验的标签
                    generate=”true"
                        写上:那么就会自动在messages中获取填写错误是的提示信息
                        不写:就会默认使用lable标签中的错误提示信息
                -->
                <label generated="true" class="error" for="sex" style="display: none;"></label>
            </div>
            <div>
                <label>年龄</label>
                <input type="text" name="age" >
            </div>
            <div>
                <label>出生日期</label>
                <input type="text" name="bir" >
            </div>
            <div>
                <label>身份证号</label>
                <input type="text" name="sid" >
            </div>
            <div>
                <input type="submit" name="submit">
            </div>
        </form>
    </div>
    </body>
    </html>
  • 相关阅读:
    C#实现通过拼多多分享微信公众号实现查询优惠券、佣金比率
    淘宝客常用接口整理
    京东联盟开发(1) 商品SKUID采集
    Grafana 安装及 Windows 应用程序服务配置工具 NSSM使用
    Windows Server 2008R2 配置网络负载平衡(NLB)
    IIS 日志分析工具:Log Parser Studio
    curl: (25) Failed FTP upload: 550 解决方案
    搭建TFS 2015 Build Agent环境(四)
    Dump中查看dictionary信息的方法
    Dump中查看DataTime时间方法
  • 原文地址:https://www.cnblogs.com/moxihuishou/p/14318817.html
Copyright © 2020-2023  润新知