分享

jQuery.validator.addMethod自定义验证方法

 Bladexu的文库 2017-12-28

在开发中用到了jQuery的validate控件,有时需要自定义验证方法。我们可以通过jQuery.validator.addMethod()来实现,下面是例子:


  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www./TR/xhtml1/DTD/xhtml1-transitional.dtd">  
  2. <html xmlns="http://www./1999/xhtml">  
  3. <head>  
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  
  5. <link href="../css/main.css" rel="stylesheet" type="text/css" />  
  6. <link href="../js/ligerUI/skins/Aqua/css/ligerui-all.css" rel="stylesheet" type="text/css" />  
  7. <!-- 引入JS库文件 -->  
  8. <script src="../js/jquery.min.js" type="text/javascript"></script>  
  9. <script src="../js/ligerUI/js/ligerui.min.js" type="text/javascript"></script>  
  10. <script src="../js/tablecolor.js" type="text/javascript"></script>  
  11. <script src="../js/jquery-form/jquery.form.js" type="text/javascript"></script>  
  12. <script src="../js/jquery-validation/jquery.validate.min.js" type="text/javascript"></script>  
  13. <script src="../js/jquery-validation/messages_cn.js" type="text/javascript"></script>  
  14.   
  15. <script type="text/javascript">  
  16.    <!--  
  17.     $(function() {  
  18.   
  19.             //保存  
  20.             $("#appEdit_btok").click(function () {  
  21.                 $("#appEdit_Form").submit();  
  22.             });  
  23.               
  24.             //自定义评语内容验证方法  
  25.               jQuery.validator.addMethod("levelLimit",function(value, element){  
  26.                  var returnVal = false;  
  27.                  var level = $("#code").attr("level");  
  28.                 if(level=="1" || level=="0"){  
  29.                     returnVal = true;  
  30.                 }  
  31.                  return returnVal;  
  32.             },"level不能为2!");  
  33.         $("#appEdit_Form").validate({  
  34.             rules : {  
  35.                 "code" : {  
  36.                     required : true,  
  37.                     number : true,//期望的是true,如果为false则展示提示信息  
  38.                     levelLimit : true//期望的是true,如果为false则展示提示信息  
  39.                 }  
  40.             },  
  41.             messages : {  
  42.                 "code" : {required : "请输入务编码!",  
  43.                                  number : "请输入数字!"  
  44.                           }  
  45.             },  
  46.             errorPlacement: function( lable, element ){  
  47.                 element.ligerHideTip();  
  48.                 element.parent().ligerTip({ content: lable.html(), target: element[0] });  
  49.             },  
  50.             success : function( lable ){  
  51.                 lable.ligerHideTip();  
  52.                 lable.remove();  
  53.             },  
  54.             submitHandler: function(formTar){  
  55.                 var serialStr = $("#appEdit_Form").serialize();  
  56.                 var urlStr = './appIndex.htm?actionMethod=addAppInfo';  
  57.                 $.ajax({  
  58.                     type:'post',  
  59.                     url:urlStr,  
  60.                     data:serialStr,  
  61.                     success:function(redata){  
  62.                         if  (redata ==1) {  
  63.                             alert( '操作成功!');  
  64.                         }else{  
  65.                             alert('失败提示', '操作失败!');  
  66.                             return;  
  67.                         }  
  68.                     }  
  69.                 });  
  70.             }  
  71.         });          
  72.     });  
  73.   
  74.      //-->  
  75.   </script>  
  76. </head>  
  77.   
  78. <body >  
  79.     <div class="right-body"  >  
  80.         <form method="post" action="javascript:void" id="appEdit_Form" >  
  81.             <table style="width:400px;" border="0" cellpadding="0" cellspacing="0"  
  82.                 class="viewdatagrid">  
  83.                 <tbody>  
  84.                     <tr>  
  85.                         <th width="160">编码:</th>  
  86.                         <td width="0" ><input id="code" name="code" type="text" style="width: 240px" value=""  level="2"/>  
  87.                         </td>  
  88.                     </tr>  
  89.                 </tbody>  
  90.             </table>  
  91.   
  92.             <div class="btn-view-block">  
  93.                 <div class="toolbar">  
  94.                     <ul>  
  95.                         <li>  
  96.                             <a href="javascript:void 0;"  class="save"  id="appEdit_btok"  name="appEdit_btok" ><span>保存</span></a>                            
  97.                         </li>  
  98.                         <li>  
  99.                     </ul>  
  100.                 </div>  
  101.             </div>  
  102.         </form>  
  103.     </div>  
  104. </body>  
  105. </html>  


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约