我想手动触发验证,包括使用jQuery Validate显示错误消息。
我试图完成的场景是这样的形式:
<form>
<input id=i1> <button id=b1>
<input id=i2> <button id=b2>
</form>
单击 时b1
,仅i1
应进行验证。单击时b2
,只i2
应验证。但是,必须张贴所有字段。我怎样才能做到这一点?我想过处理单击事件b1/b2
并手动验证表单的一部分。
我想手动触发验证,包括使用jQuery Validate显示错误消息。
我试图完成的场景是这样的形式:
<form>
<input id=i1> <button id=b1>
<input id=i2> <button id=b2>
</form>
单击 时b1
,仅i1
应进行验证。单击时b2
,只i2
应验证。但是,必须张贴所有字段。我怎样才能做到这一点?我想过处理单击事件b1/b2
并手动验证表单的一部分。
该库似乎允许对单个元素进行验证。只需将点击事件与您的按钮相关联,然后尝试以下操作:
$("#myform").validate().element("#i1");
这里的例子:
或者可以简单地使用: $('#myElem').valid()
if ($('#myElem').valid()){
// will also trigger unobtrusive validation only for this element if in place
// add your extra logic here to execute only when element is valid
}
请注意,validate()
在使用此方法检查之前需要在表单上调用。
我的方法如下。现在我只想在单击/更改一个特定复选框时验证我的表单:
$('#myForm input:checkbox[name=yourChkBxName]').click(
function(e){
$("#myForm").valid();
}
)
正如文档中所写,以编程方式触发表单验证的方法是调用validator.form()
var validator = $( "#myform" ).validate();
validator.form();
从 1.14 版开始,有一个未记录的方法
validator.checkForm()
此方法静默验证返回真/假。它不会触发错误消息。