0

検証するための最良の方法は何ですか(4つの入力ボックスすべてが空白ではないことを確認するため)を知りたかったのですか?

<html>

  <head></head>

  <body>
    <input type="text" id="i1">
    <input type="text" id="i2">
    <input type="text" id="i3">
    <input type="text" id="i4">
  </body>

</html>
4

4 に答える 4

1

それらがすべてinputsである場合は、次を使用できますdocument.getElementsByTagName

var allinputs = document.getElementsByTagName("input");
console.log(allinputs);
for (var i = 0; i < allinputs.length; i++) {
    if(allinputs[i].value.length == 0){
      alert('need to have something here');
       return;
    }
}

ここに働くフィドルがあります

于 2012-11-20T17:01:50.743 に答える
0

JQuery Validateは、フィールドを検証するための非常に簡単な方法です。あなたは彼らのウィキでそれについてもっと読むことができます:

http://docs.jquery.com/Plugins/Validation

于 2012-11-20T16:58:42.330 に答える
0

HTML:

<input type="button" value="submit" onclick="submitForm()">

JavaScript:

  function submitForm()
    {
     if(validate())
      {
       alert('No blank found!!');
      }
      else
     {  alert('blank found!!');  }
    }    

    function validate()
    {
      var i1 =document.getElementById('i1').value;
      var i2 =document.getElementById('i2').value;
      var i3 =document.getElementById('i3').value;
      var i4 =document.getElementById('i4').value;
      var result = false;

      if( i1 && i2 && i3 && i4) {
         result = true;
      }
     return result;
    }
于 2012-11-20T16:59:15.800 に答える
0

クロスブラウザではなく、私のカスタムメソッド:

NodeList.prototype.every = HTMLCollection.prototype.every = Array.prototype.every;

var allChecked = document.querySelectorAll('input[type=text]').every(function(el) {
    return el.value !== '';
});

if (allChecked) alert("All checked!");

クロスブラウザ(IE8以降)、面白い方法ではありません:

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

var allChecked = true;
for (var i = 0, len = inputs.length; i < len; i++) {
    if (inputs[i].value === '') {
        allChecked = false;
    }
}

if (allChecked) alert("All checked!");
于 2012-11-20T16:59:23.287 に答える