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">
4

2 回答 2

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
}
于 2013-01-16T00:43:12.057 回答
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');
}
于 2013-01-16T00:47:01.787 回答