2013-01-16 39 views
2

我有很多輸入框,我需要做一個條件,檢查它們是否都是空的我怎麼能在一個變量的JavaScript中做到這一點。這是我有,但只檢查1盒用一個變量檢查​​多個輸入字段

function boxes() { 

    var box_a = document.getElementById('box_a'); 

     if(box_a==="") { 
      alert("box not filled") 
       return false; 
      } 

<input type="text" id="box_a"> 
+0

「*帶單個變量*」是什麼意思?如果從字面上看,這幾乎是不可能的 – Bergi

+0

請告訴我們你有哪些箱子。目前,您向我們展示的所有框都由該功能處理。 – Bergi

回答

2

嘗試這樣的:

var textinputs = document.querySelectorAll('input[type=text]'); 

var empty = [].filter.call(textinputs, function(el) { 
    return !el.value 
}); 

if (textinputs.length == empty.length) { 
    // all text inputs are empty 
} 
+0

我認爲OP提到的文本框和普通的JS – Sunny

+0

哦,對,由於某種原因,我閱讀複選框。改性。這是普通的JS壽。 – elclanrs

+0

謝謝我會嘗試 – user1559811

2

如果你真的是所有的頁面上的輸入,您可以使用getElementsByTagName

function boxes() { 
    var anyFilled = false; 

    var boxes = document.getElementsByTagName('input'); 

    for(var i = 0; i < boxes.length; i++) { 
     if(boxes[i].value !== "") { 
      anyFilled = true; 
      break; 
     } 
    } 

    if(anyFilled) 
     alert('An input has a value'); 
} 
+0

謝謝我會盡力 – user1559811

+0

是的它運作良好,謝謝 – user1559811

+0

有用的知識。如果兩個答案都解決了您的問題,請選擇一個並標記爲已接受的答案。 – Andre