检查jQuery中是否填充了至少一个输入字段

时间:2012-11-16 12:25:39

标签: javascript jquery input

我有一个jQuery脚本,用于检查至少有一个输入字段是否包含文本,但是它不检查我的select选项。有人可以帮我实施吗?

剧本:

$(function(){
    $("#myform").submit(function(){

        var valid=0;
        $(this).find('input[type=text]').each(function(){
            if($(this).val() != "") valid+=1;
        });

        if(valid){
            alert(valid + " inputs have been filled");
            return true;
        }
        else {
            alert("error: you must fill in at least one field");
            return false;
        }
    });
});

以及用于测试此内容的HTML:

<form action="/echo/html" id="myform" method="post">
<input type="text"><br>
<input type="text"><br>
<input type="text"><br>

<select name="something" id="something" type="text">
<option value=""></option>
<option value="one">Option one</option>
<option value="two">Option two</option>
<option value="three">Option three</option>
</select>

<input type="submit"/>
</form>​

1 个答案:

答案 0 :(得分:11)

对于一个同时获取'select'和'input'元素的语句,只需将单个jQuery选择器更改为多选择器,如下所示:

$(this).find('input[type=text], select').each(function(){
            if($(this).val() != "") valid+=1;
        });