我有一个用户添加VendorName
,FromDate
& ToDate
。使用我当前的代码验证所有三个提到的字段。
但是现在,我不想验证ToDate
字段。
下面是我的html相同的
<tr id="vendorlisttr1">
<td>
<div class="row noPadding vendorForm">
<div class="vendorDaterow">
<div class="vendorName" id="dvVendorNameData1">
<label>OnM SP vendor name</label><span><input type="text" value="" name="nmVendorData" id="txtVendorName1" /></span>
</div>
<div class="vendorFromDate">
<label>From Date</label><span class="datepicker"><input type="text" value="" name="spFromDate" id="spFromDate1" readonly="readonly" /><i class="fa fa-calendar" aria-hidden="true"></i></span>
</div>
<div class="vendorToDate">
<label>To Date</label><span class="datepicker"><input type="text" value="" name="spToDate" id="spToDate1" readonly="readonly" /><i class="fa fa-calendar" aria-hidden="true"></i></span>
</div>
</div>
<div class="add">
<i class="fa fa-plus" aria-hidden="true"></i>
</div>
</div>
</td>
</tr>
以下是我验证它们的方法。
var vendorError = false;
$(".vendorForm input").each(function () {
if ($(this).val() == '') {
jAlert(ValidationMessageConfig.vendorErrorMessage, ValidationMessageConfig.Title);
vendorError = true;
return false;
}
})
if (vendorError) {
return false;
}
那么我应该如何停止验证ToDate
?
重要提示:我无法使用硬编码ID
答案 0 :(得分:1)
您可以使用:not() Selector
选择与给定选择器不匹配的所有元素。
使用以下选择器
$(".vendorForm input:not(#spToDate1)")
您也可以使用.not()
$(".vendorForm input").not('#spToDate1')
答案 1 :(得分:1)
您可以使用jquery not()
:
$(".vendorForm input").not("#spToDate1")
但由于您无法使用id
,因此可以考虑选择器:input[name!='spToDate']
var vendorError = false;
$(".vendorForm input[name!='spToDate']").each(function () {
if ($(this).val() == '') {
jAlert(ValidationMessageConfig.vendorErrorMessage, ValidationMessageConfig.Title);
vendorError = true;
return false;
}
})
if (vendorError) {
return false;
}
答案 2 :(得分:0)
var vendorError = false;
$(".vendorForm input").each(function () {
if ($(this).val() == '' && $(this).attr("id") != 'spToDate1') {
jAlert(ValidationMessageConfig.vendorErrorMessage, ValidationMessageConfig.Title);
vendorError = true;
return false;
}
})
if (vendorError) {
return false;
}