2013-07-19 63 views
0

測試所有選定輸入是否爲空的最簡單方法是什麼?jQuery檢查所有選定輸入是否爲空

我讓我的輸入是這樣的:

$myinputs = $('.inputstotest'); 

,並會測試一個輸入和:

if ($.trim($this.val()) == '') 

但如何測試一個組,如果全部是空的,或者任何虛假返回true(至少有一個)不是空的?

+2

的可能重複的[jQuery的檢查,如果任何選擇的輸入是空的(http://stackoverflow.com/questions/17751631/jquery-check-if-any-of-selected-inputs-is-empty ) – Neal

+3

@Neal它不是重複的,而是相反的。 – Barmar

+0

@Barmar不是真的...看起來完全一樣,具有相同的答案... – Neal

回答

0

您可以嘗試

$(".inputstotest input").each(function(){ 
     if ($.trim($(this).val()).length == 0){ 
      //do something 
     } 
     else{ 
      //do something 
     } 
    }); 
+1

我認爲他遇到困難的部分是什麼_something_應該是得到他的真/假結果。 – Barmar

3

試試這個:

var $myinputs = $('.inputstotest'); 

var allEmpty = $myinputs.filter(function() { 
    return $.trim(this.value) != ''; 
}).length == 0; 

console.log(allEmpty); 

FIDDLE DEMO

(爲了測試,在HTML標記輸入一些值,再次運行小提琴和檢查在控制檯中)

2

T他就像我對前一個問題的回答一樣,只是測試的感覺是顛倒過來的。

var result = true; 
$('.inputstotest').each(function() { 
    if ($.trim($(this).val())) != '') { 
     result = false; 
     return false; // Terminate the .each loop 
    } 
}); 
return result; 
+0

我認爲它是.val()。請糾正我,如果我錯了 – bugwheels94

+1

@Ankit謝謝你,你是正確的。我現在在其他答案中修正了相同的錯字。 – Barmar

+0

不客氣。 – bugwheels94