[英]Jquery loop form to check for all empty fields then execute a function
我試圖循環窗體以檢查是否為空字段,然后執行並運行。 我目前正在下面使用在網站上找到的類似內容,但是發生了什么情況,每個循環檢查1個字段並看到1個不為空並仍執行else功能。 我想我需要立即檢查所有內容,然后執行下一個功能。 我怎樣才能做到這一點?
if($('.enter-info--ownerInfo .req').val() != "") {
alert("Empty Fields!!")
} else {
run this function
}
謝謝...
使用過濾 ,很容易:
var anyFieldIsEmpty = $("form :input").filter(function() {
return $.trim(this.value).length === 0;
}).length > 0;
if (anyFieldIsEmpty) {
// empty fields
}
演示: http : //jsfiddle.net/Lz9nY/
$('.enter-info--ownerInfo .req').each(function() {
if ($(this).val() == "")
{
alert("empty field : " + $(this).attr('id'));
}
});
首先選擇所有字段:
var fields = $('.enter-info--ownerInfo .req')
然后將其過濾為空值:
fields.filter(function() {
return this.value === '';
});
然后檢查結果對象的length
屬性。 如果等於0
則所有字段都有一個值,否則執行函數。
if(fields.length === 0) {
// no empty fields
}
else {
// empty fields
}
您可以使用循環和標志:
var valid = true;
$('.req').each(function () {
if ($(this).val() == '') {
valid = false;
return false;
}
});
if (valid) {
// all fields are valid
}
您可以使用.filter
方法將元素縮減為符合您的條件的元素:
if $('.enter-info--ownerInfo .req').filter(function () {
return $.trim($(this).val()) == ""
}).length > 0) {
alert("One or more fields are empty")
} else {
// run this function
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.