我想知道什么是最好的验证方法(确保所有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>
答案 0 :(得分:1)
如果他们都是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;
}
}
这是一个working fiddle
答案 1 :(得分:0)
JQuery Validate是验证字段的一种非常简单的方法。您可以在他们的维基上阅读更多相关信息:
答案 2 :(得分: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;
}
答案 3 :(得分: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!");