检查文本框是否为空,使用jQuery。

3
我有一个包含许多字段的div。我想进行检查,以确保用户必须填写所有字段,否则显示错误消息。为此,我尝试了以下内容:
if ($('div').children("input[type=text]").attr("value") == '') 
 flag = false; 
else 
 flag = true;

但这不会检查所有文本字段,它只会检查第一个子元素。如何检查所有文本字段?

3个回答

3

尝试使用 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);
    });
});​

请访问jsFiddle上的演示

该代码将在div内所有input[type=text]字段都填写时返回true,如果至少有一个为空,则返回false


1

标准方式

if(!$('div').find('#idOfTextField').val()){
 //empty
}

0
if($("div").find('input:text[value=""]').length > 0)
{
 alert("error");
 return false;
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接