检查是否填写了任何表单元素

时间:2010-12-23 16:53:59

标签: jquery validation forms

我有一个带输入,复选框,单选按钮,textarea的表单。 我想用jquery检查我的表单中是否有任何元素被填充,如果至少填充了一个字段,那么确定。 感谢

2 个答案:

答案 0 :(得分:4)

$("#form_id").submit(function() {
    var filled = false;
    $(this).find("input").each(function() {
        if ($(this).val() != "") {
           filled = true;
        }
    });
    if (filled) { return true; }
    else { // raise an error
           return false; }
});

基本上,只需遍历输入字段,看看是否有空。如果jQuery提交处理程序返回true,则表单的默认行为发生(它提交),如果它返回false,则不会发生任何事情。

答案 1 :(得分:3)

您可以尝试这样的事情:

if ($('input:checked, input[type="text"][value!=""], textarea[value!=""]) {
    // some form field is filled
}

input:checked查找选中的复选框或单选按钮,input[type="text"][value!=""]查找其值不是空字符串的文本输入字段,textarea:not(:empty)选择其中包含一些文本的textareas(甚至如果那只是空白)。选择器选择所有这些元素,然后.length检查这些检查是否匹配了任何元素。