検証するための最良の方法は何ですか(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つの入力ボックスすべてが空白ではないことを確認するため)を知りたかったのですか?
<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>
それらがすべてinput
sである場合は、次を使用できます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;
}
}
ここに働くフィドルがあります
JQuery Validateは、フィールドを検証するための非常に簡単な方法です。あなたは彼らのウィキでそれについてもっと読むことができます:
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;
}
クロスブラウザではなく、私のカスタムメソッド:
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!");