根据用户输入向JQuery Validator添加和删除规则?

时间:2012-10-24 00:52:51

标签: javascript jquery dynamic validation validationrules

根据用户输入,要禁用某些字段的验证规则。

使用jquery验证器插件,这有可能吗? JSfiddle在这里:http://jsfiddle.net/webhelpla/3eQam/

    <html>
    <head>
      <script src="http://code.jquery.com/jquery-latest.js"></script>
      <script type="text/javascript" src="http://jzaefferer.github.com/jquery-validation/jquery.validate.js"></script>

      <script type="text/javascript">
            $(document).ready(function(){
            $("#form").validate();
          });  

       </script> 
    </head>
    <body>


      <form  id="form" method="get" action="">

         <p>
           <label>Validate all
             <input type="radio" name="fields_to_validate" value="all" id="fields_to_validate_0">
             </label>
         </p>    
         <p>         
             <label> Validate name only   
             <input type="radio" name="fields_to_validate" value="name" id="fields_to_validate_1">
             </label>       
         </p>   

        <p>
          <label for="cname">Name</label>
           *<input id="cname" name="name" size="25" class="required" minlength="2" />
         </p>

         <p>
           <label for="cemail">E-Mail</label>
           *<input id="cemail" name="email" size="25"  class="required email" />
         </p>

         <p>
           <input class ="submit" type="submit" value="Submit"/></p></form>
    </body>
    </html>

1 个答案:

答案 0 :(得分:1)

您正在寻找的是该领域的条件参数

我相信它是这样的,从输入元素中删除硬编码的必需类,将两个单选按钮命名为name_only和

之类的不同名称。
 $('form').validate({
    rules:
       name:{
        required: function() {
         return $("input:radio[name='nameonly']:checked").val() == 'yes';
       }
     }
  });

所以它没有确定动态直接用户输入应该要求什么,它根据条件输入需要输入