【发布时间】:2010-12-23 16:53:59
【问题描述】:
我有一个带有输入、复选框、单选按钮、文本区域的表单。 我想用 jquery 检查我的表单的任何元素是否已填写,如果至少填写了一个字段,则可以。 谢谢
【问题讨论】:
标签: jquery validation forms
我有一个带有输入、复选框、单选按钮、文本区域的表单。 我想用 jquery 检查我的表单的任何元素是否已填写,如果至少填写了一个字段,则可以。 谢谢
【问题讨论】:
标签: jquery validation forms
$("#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,则不会发生任何事情。
【讨论】:
你可以试试这样的:
if ($('input:checked, input[type="text"][value!=""], textarea[value!=""]) {
// some form field is filled
}
input:checked 查找选中的复选框或单选按钮,input[type="text"][value!=""] 查找值不是空字符串的文本输入字段,textarea:not(:empty) 选择其中包含一些文本的文本区域(即使这只是空白)。选择器选择所有这些元素,然后.length 检查是否有任何元素被这些检查匹配。
【讨论】:
input[type="password"][value!=""]。
textarea 的value 而不是HTML 内容(假设OP 想要检查用户修改)。用户所做的更改由value 属性反映。