例如,我在一个页面中有 3 个具有相同名称的表单。如何使用一种验证方法验证所有这些表单?
<form id="formID">
<input name="nick">
<input type="submit">
</form>
<form id="formID">
<input name="nick">
<input type="submit">
</form>
<form id="formID">
<input name="nick">
<input type="submit">
</form>
我只想验证提交的表单,而不是同时验证所有表单。
$('#formID').validate({
})
我的解决方案不起作用。我还发现无法添加不同的 ID,因为这些表单位于 PHP 循环中,并且必须具有相同的 ID。
最佳答案
当您需要应用相同的.validate()
时方法到多种形式,你只需要一个 jQuery .each()
您可以通过form
一次性定位它们标签。
$('form').each(function() { // <- selects every <form> on page
$(this).validate({ // <- initialize validate() on each form
// your options // <- set your options inside
});
});
<小时/>
引用OP:
"I also find I can't add different IDs because these forms are in a PHP loop and it must have same ID."
那么你的 PHP 循环构建不正确。 每个id
页面上的内容必须是唯一的,否则 HTML 标记无效。您可以简单地使用class
而不是id
。否则的话,如果没有其他<form>
页面上的元素,您可以使用 $('form')
将它们全部定位正如上面的演示中所做的那样。
关于jquery - 验证同一页面上的多个表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23941338/