jQuery检查是否有任何选定的输入为空

时间:2013-07-19 17:00:46

标签: jquery if-statement

如果任何选定的输入为空,我将如何以简单的方式测试?

我以这种方式得到我的输入:

$myinputs = $('.inputstotest');

并将测试单个输入:

if ( $.trim($this.val()) == '' )

但是如何测试一个组并且如果所有都不为空则返回true或者如果任何(至少一个)为空则返回false?

6 个答案:

答案 0 :(得分:6)

我建议:

var someEmpty = $('.inputstotest').filter(function(){
    return $.trim(this.value).length === 0;
}).length > 0;

上述someEmpty将是一个布尔值,true如果该类名称的inputs具有修剪后的value等于零,{{1}如果该类名的输入没有修剪 - false长度等于零。

参考文献:

答案 1 :(得分:2)

var result = true;
$('.inputstotest').each(function() {
    if ($.trim($(this).val())) == '') {
        result = false;
        return false; // Terminate the .each loop
    }
});
return result;

答案 2 :(得分:2)

你可以做到

var $myinputs = $('.inputstotest');
if($myinputs.filter(function() { return $.trim(this.value) == ''; }).length > 0) {
    //There is at least one empty input
}

答案 3 :(得分:2)

var invalidInputs = $('.inputstotest').filter(function() {
    return $.trim(this.value) == '';
});

if (invalidInputs.length > 0) {
   //some were invalid
   invalidInputs.after('<span>Please enter a value!</span>');
}

答案 4 :(得分:0)

如果你的每个输入都有相同的类,例如。 class="checkInput"使用的jquery使用以下代码循环遍历它们:

var anyBlank = false;
$('.checkInput').each(function(){
    if($(this).val() == ''){
        anyBlank = true;
    }
});

if(anyBlank){
    alert('There is at least 1 input that is blank');
}

答案 5 :(得分:0)

你可以使用jQuery的每个函数

$(".inputstotest").each(function(){});

这是你的小提琴:http://jsfiddle.net/Beyyd/1/