0

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

使用 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>
4

1 回答 1

1

您正在寻找的是该字段的条件参数

我相信它是这样的,从您的输入元素中删除硬编码的必需类,将表示您的必需字段的两个单选按钮命名为不同的名称,例如 name_only 和:

 $('form').validate({
    rules:
       name:{
        required: function() {
         return $("input:radio[name='nameonly']:checked").val() == 'yes';
       }
     }
  });

所以它不能动态地确定直接用户输入应该需要什么,它的输入是基于条件输入的

于 2012-10-24T02:00:08.997 回答