zoukankan      html  css  js  c++  java
  • JQuery 表单验证--jquery validation

    jquery validation,表单验证控件

    官方地址 :http://jqueryvalidation.org/

    jquery表单验证 默认值校验规则

    jquery表单验证 默认的提示

     

      1 <html>
      2     <head>
      3         <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
      4         <title>jQuery validation plug-in - main demo</title>
      5         <link rel="stylesheet" type="text/css" media="screen" href="css/screen.css" />
      6         <script type="text/javascript" src="js/lib/jquery.js"></script>
      7         <script type="text/javascript" src="js/dist/jquery.validate.js"></script>
      8         
      9         
     10 <script type="text/javascript">
     11     
     12 /*======================================================================*/    
     13 /*
     14      * 自定义验证方法
     15      * $.validator.addMethod(name,method,message);
     16      *         * $.validator.addMethod()是固定写法
     17      *         * name:添加的方法的名字
     18      *         * method:一个函数,function(value,element,param){}
     19      *             * value:对应页面中元素的value属性值
     20      *             * element:对应页面中的元素
     21      *             * param:参数
     22      *         * message:错误提示信息
     23      */
     24     $.validator.addMethod("cartLength",function(value,element,param){
     25         var len = value.length;
     26         
     27         if(len!=15&&len!=18){
     28             return false;
     29         }
     30         
     31         return true;
     32         
     33     });
     34     
     35     $.validator.addMethod("cartCheck",function(value,element,param){
     36         var len = value.length;
     37         
     38         var flag; 
     39         
     40         if(len==15){
     41             var pattern = /^[0-9]{15}$/;
     42             
     43             flag = pattern.test(value);
     44         }
     45         
     46         if(len==18){
     47             var pattern  = /^[0-9]{18}|[0-9]{17}x$/;
     48             
     49             flag = pattern.test(value);
     50         }
     51         
     52         if(!flag){
     53             return false;
     54         }
     55         
     56         return true;
     57         
     58         
     59     });
     60     
     61     
     62 /*********************************************************************************************************/    
     63 
     64 
     65 $().ready(function(){
     66     $("#empForm").validate({
     67     rules:{
     68         realname:"required",
     69         username:{
     70             required:true,
     71             rangelength:[5,8]
     72         },
     73         psw:{
     74             required:true,
     75             rangelength:[6,12]
     76         },
     77         psw2:{
     78             required:true,
     79             rangelength:[6,12],
     80             equalTo:"#psw"
     81         },
     82         gender:"required",//如果在页面中设置其对应的label标签进行提示,在验证规则的信息提示中可以不设置相关内容
     83         age:{
     84             required:true,
     85             range:[26,50]
     86         },
     87         edu:"required",
     88         birthday:{
     89             required:true,
     90             dateISO:"yyyy/MM/dd"
     91         },
     92         checkbox1:"required",
     93         email:{
     94             required:true,
     95             email:true
     96         },
     97         cart:{
     98             required:true,
     99             cartLength:true,
    100             cartCheck:true
    101         }
    102         
    103     },
    104     messages:{
    105         realname:"真是名称不能为空",
    106         username:{
    107             required:"登录名不能为空",
    108             rangelength:"长度必须为5-8位"
    109         },
    110         psw:{
    111             required:"密码不能为空",
    112             rangelength:"密码长度必须是6-12位"
    113         },
    114         psw2:{
    115             required:"密码不能为空",
    116             rangelength:"密码长度必须是6-12位",
    117             equalTo:"两次密码输入不一致"
    118         },
    119         gender:"必选一个性别",
    120         age:{
    121             required:"不能为空",
    122             range:"年龄必须在26-50岁之间"
    123         },
    124         edu:"必须选择一个学历",
    125         birthday:{
    126             required:"出生日期不能为空",
    127             dateISO:"日期格式不正确"
    128         },
    129         checkbox1:"必须选择一个",
    130         email:{
    131             required:"邮件不能为空",
    132             email:"邮件格式不正确"
    133         },
    134         cart:{
    135             required:"身份证号不能为空",
    136             cartLength:"身份证号长度不正确",
    137             cartCheck:"身份证格式不正确"
    138         }
    139     }    
    140     });    
    141 });
    142 
    143 </script>
    144 </head>
    145 <body>
    146     
    147     <!--
    148                                           默认错误提示信息,在放置在页面的表单中第一个控件后面
    149                 <label  style="display: none" for="gender" class="error">请选择性别</label>
    150                     * for:值对应的是页面表单中name属性的值
    151                     * class:设置样式,设置"error"样式
    152                     * style:"display: none",设置成隐藏
    153                 
    154                 * 在jquery表单验证框架运行时,原理如下:
    155                     * 首先,表单验证框架会在页面中查找对应的label标签
    156                         * 在页面中查找对应label标签,错误提示信息就提示页面中label标签内的文本信息
    157                         * 在页面中没有找到对应label标签,就通过验证框架底层创建一个label标签进行错误信息的提示
    158                 
    159                 
    160                 errorClass: "error",
    161                 validClass: "valid",
    162                 errorElement: "label",
    163                 
    164                 
    165                 label = $("<" + this.settings.errorElement + "/>")            //<label></label>
    166                     .attr({"for":  this.idOrName(element), generated: true})//<label for="gender"></label>
    167                     .addClass(this.settings.errorClass)                        //<label for="gender" class="error"></label>
    168                     .html(message || "");                                    //<label for="gender" class="error">错误提示信息</label>
    169                                       
    170             -->
    171     
    172     
    173     <p>员工信息录入</p>
    174 <form name="empForm" id="empForm" method="post" action="test.html">
    175         <table border=1>
    176             <tr>
    177                 <td>真实姓名(不能为空 ,没有其他要求)</td>
    178                 <td><input type="text" id="realname" name="realname" />
    179                 </td>
    180             </tr>
    181             <tr>
    182                 <td>登录名(登录名不能为空,长度应该在5-8之间,可以包含中文字符(一个汉字算一个字符)):</td>
    183                 <td><input type="text" id="username" name="username" /></td>
    184             </tr>
    185              <tr> 
    186               <td>密码(不能为空,长度6-12字符或数字,不能包含中文字符):</td>
    187               <td><input type="password" id="psw"  name="psw" style="120px" /></td>
    188             </tr>
    189             <tr> 
    190               <td>重复密码密码(不能为空,长度6-12字符或数字,不能包含中文字符):</td>
    191               <td><input type="password" id="psw2" name="psw2" style="120px" /></td>
    192             </tr>
    193             <!--
    194                 
    195                                       
    196             -->
    197             <tr>
    198                 <td>性别(必选其一)</td>
    199                 <td>
    200                     <input  type="radio" id="gender_male" value="m" name="gender"/>201                     <input  type="radio" id="gender_female" value="f" name="gender"/>202                     <label  style="display: none" for="gender" class="error">请选择性别</label>
    203                 </td>
    204             </tr>
    205             <tr>
    206                 <td>年龄(必填26-50):</td>
    207                 <td><input type="text" id="age" name="age" /></td>
    208             </tr>
    209             
    210             <tr> 
    211               <td>你的学历:</td>
    212               <td> <select name="edu" id="edu">
    213                       <option value="">--请选择你的学历--</option>
    214                       <option value="a">专科</option>
    215                       <option value="b">本科</option>
    216                       <option value="c">研究生</option>
    217                       <option value="e">硕士</option>
    218                       <option value="d">博士</option>
    219                   </select>
    220               </td>
    221             </tr>
    222             
    223             <tr> 
    224               <td>出生日期(1982/09/21):</td>
    225                <td><input type="text" id="birthday"  name="birthday" style="120px" value="" /></td>
    226             </tr>
    227             
    228            <tr> 
    229               <td>兴趣爱好:</td>
    230               <td colspan="2"> 
    231                   <input type="checkbox" name="checkbox1" id="qq1"/>乒乓球 
    232                   <input type="checkbox" name="checkbox1" id="qq2" value="1" />羽毛球 
    233                   <input type="checkbox" name="checkbox1" id="qq3" value="2" />上网 
    234                   <input type="checkbox" name="checkbox1" id="qq4" value="3" />旅游 
    235                   <input type="checkbox" name="checkbox1" id="qq5" value="4" />购物 
    236                   <label  style="display: none" for="checkbox1" class="error">您的兴趣爱好,至少选择一个</label>
    237               </td>
    238             </tr>
    239              <tr> 
    240                   <td align="left">电子邮箱:</td>
    241                   <td><input type="text" id="email" style="120px" name="email" /></td>
    242               </tr>
    243               <tr> 
    244                   <td align="left">身份证(15-18):</td>
    245                   <td><input type="text" id="cart"  style="200px" name="cart" /></td>
    246               </tr>
    247             <tr>
    248                 <td></td>
    249                 <td></td>
    250                 <td><input type="submit"  name="firstname"  id="firstname" value="保存"></td>
    251             </tr>
    252         </table>
    253 
    254 </form>
    255 <script language="JavaScript">
    256     
    257 </script>
    258 
    259 </body>
    260 </html>
  • 相关阅读:
    搭建React+TypeScript项目
    vue 基础常用部分总结
    nodejs基于nodemailer插件实现发送邮箱
    httpserver的使用
    android4.0.4 系统默认值的修改
    使用TransferLearning实现环视图像的角点检测——Tensorflow+MobileNetv2_SSD
    Idea 2020.3 springboot 热更新
    Prism学习之SilverlightWindowRegionAdapter
    Silverlight异步Socket通信
    Lync 2010 标准版安装注意事项
  • 原文地址:https://www.cnblogs.com/liuwt365/p/4199905.html
Copyright © 2011-2022 走看看