我有一个包含很多 input[type=text]
字段的 div。我想检查用户是否必须填写所有字段,否则会显示错误消息。为此,我尝试了:
if ($('div').children("input[type=text]").attr("value") == '')
flag = false;
else
flag = true;
但这不会检查所有文本字段,它只会检查第一个 child 。我怎样才能检查所有的文本字段?
最佳答案
尝试使用find()
相反
if ($('div').find("input[type=text]").val() == '')
要检查所有输入项,您需要使用 each()
对其进行迭代.
正确的代码是:
$(function() {
$('input:submit').click(function(){
var flag = true;
$('div').find("input[type=text]").each(function(){
if($(this).val() === '') flag = false
});
alert(flag);
});
});
参见 demo在 jsFiddle 上。
如果 div
中的所有 input[type=text]
字段都已填充,此代码返回 true
并且 false
如果至少有一个是空的。
关于javascript - 检查文本字段是否为空或不是jquery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11341824/