如何使用jQuery检查所有输入是否为空

Clé*_*aud 31 jquery input

我需要使用jQuery验证表单.我可以逐个查看我的所有输入,但这不是一个非常实用的解决方案.

如何更有效地检查我的所有输入是否非空?在我的形式,我可以有input不同类型的元素:文本,几组广播,选择等.

mat*_*mmo 36

只需使用:

$("input:empty").length == 0;
Run Code Online (Sandbox Code Playgroud)

如果它为零,则不为空.

为了更聪明,并且过滤掉只有空格的项目,你可以这样做:

$("input").filter(function () {
    return $.trim($(this).val()).length == 0
}).length == 0;
Run Code Online (Sandbox Code Playgroud)

  • :空选择器将无法按预期工作,因为它用于选择所有没有子元素的元素. (25认同)
  • 你的过滤函数应该是`return $ .trim($(this).val()).length === 0`. (3认同)

Dar*_*ren 19

用途each:

var isValid;
$("input").each(function() {
   var element = $(this);
   if (element.val() == "") {
       isValid = false;
   }
});
Run Code Online (Sandbox Code Playgroud)

然而,你可能会更好地使用jQuery validateIMO更清洁的东西.


Rez*_*eri 13

$('#form_submit_btn').click(function(){
    $('input').each(function() {
        if(!$(this).val()){
            alert('Some fields are empty');
           return false;
        }
    });
});
Run Code Online (Sandbox Code Playgroud)