2016-11-21 93 views
0

我使用jQuery验证的形式定义如下。从特定元素中删除jQuery元素验证

//#costCalculation is a form id 
$('#costCalculation').validate({ 

    onsubmit: false, //To prevent validation during form submit 
     errorClass: "my-error-class", 

    rules: { 
     adSizeFull: { 
      required: true 
     }, 
     fullAdNo: { 
      required: true 
     } 
    }, 
    messages: { 

     adSizeFull: "Please select Full adsize", 
     fullAdNo: "Please select total Ads(Full)" 
    }, 
    submitHandler: function (form) { // for demo 
     //alert('valid form'); 
     return true; 
    } 
}); 

我有这样的

<div class="row"> 
     <div class="col-sm-6"> 
     <div class="form-group"> 
      <label class="control-label col-xs-4">Ads(Full):</label> 
      <div class="col-xs-8"> 
       <select name="adSizeFull" id="fullads-list" class="form-control" onchange="fullAdSizeChange()"> 
       <option value="">--Select--</option> 
       </select> 
      </div> 
     </div> 
     </div> 
     <div class="col-sm-6"> 
      <div class="form-group"> 
      <label class="control-label col-xs-4" for="fullAdNo">#:</label>  
      <div class="col-xs-8"> 
       <select name="fullAdNo" id="fulladnos-list" class="form-control" onchange="fullAdNoChange()"> 
       <option value="">--Select--</option> 
       </select> 
      </div> 
     </div> 
     </div> 
     </div> 

选择框形式,我想在下面的方案中删除验证JS

function fullAdSizeChange() { 
    var adSizeFull = $("#fullads-list").val(); 
    var fullAdNo = $("#fulladnos-list").val(); 
    if(adSizeFull == "" && fullAdNo == "") { 
      $("#fullads-list").rules("remove", "required"); 
      $("#fulladnos-list").rules("remove", "required"); 
     } 
} 

如何从特定的元素,如果去掉验证表单如上所述?

我还没有复制整个代码。语法可能有问题。我需要规范,仅实现这个

回答

0

只需添加所需的类两个选择框类无需添加更改事件

  <select name="adSizeFull" id="fullads-list" class="form-control required" onchange="fullAdSizeChange()"> 
      <option value="">--Select--</option> 
      </select> 
+0

这确实要删除或验证时改变所需的添加不锻炼 – Sam

+0

选择框? –

+0

是的。我想在更改选择框 – Sam

1

jQuery验证居然直接支持dependency expressions

所有你需要做的是改变你这样的验证选项:

parent: { 
    required: function(element) { 
    return $("#age").val() < 13; 
    // Makes "parent" required only if age is below 13. 
    } 

完整的例子:

$("#myform").validate({ 
    rules: { 
    age: { 
     required: true, 
     min: 3 
    }, 
    parent: { 
     required: function(element) { 
     return $("#age").val() < 13; 
     } 
    } 
    } 
}); 
}