如何使用jQuery检查所有输入是否为空
我需要使用jQueryvalidation表单。 我可以逐个查看我的所有输入,但这不是一个非常实用的解决方案。
如何更有效地检查所有输入是否非空? 在我的forms,我可以有不同类型的input
元素:文本,几组广播,选择等。
只需使用:
$("input:empty").length == 0;
如果它为零,则不为空。
为了更聪明,并且过滤掉只有空格的项目,你可以这样做:
$("input").filter(function () { return $.trim($(this).val()).length == 0 }).length == 0;
使用each
:
var isValid; $("input").each(function() { var element = $(this); if (element.val() == "") { isValid = false; } });
但是你可能会更好地使用jQuery validate
哪些IMO更清洁。
$('#form_submit_btn').click(function(){ $('input').each(function() { if(!$(this).val()){ alert('Some fields are empty'); return false; } }); });
你可以做到。代码
我只想指出我的答案,因为我知道循环比$.each
循环更快,这里是:
只需将class="required"
添加到您想要的输入中,然后在jquery中执行:
$('#signup_form').submit(function(){ var fields = $('input.required'); for(var i=0;i
$('input').each(function() { if ($(this).val() != '') { console.log('all inputs filled'); } else{ console.log('theres an empty input'); return false } });
您可能希望将其包装在keyup函数中
像这样:
if ($('input[value=""]').length > 0) { console.log('some fields are empty!') }
var isValid = true; $("#tabledata").find("#tablebody").find("input").each(function() { var element = $(this); if (element.val() == "") { isValid = false; } else{ isValid = true; } }); console.log(isValid);