【发布时间】:2012-04-05 10:44:05
【问题描述】:
我在我的网站上使用jQuery Validate 插件,然后通过ajax 提交表单。当 整个 表单有效时,我可以使用一个事件吗?
【问题讨论】:
标签: jquery validation jquery-validate
我在我的网站上使用jQuery Validate 插件,然后通过ajax 提交表单。当 整个 表单有效时,我可以使用一个事件吗?
【问题讨论】:
标签: jquery validation jquery-validate
没有针对此的事件。只需使用简单的 if 语句检查状态即可。
if($("form").valid()) {
//go ahead
}
但是,如果您正在尝试使用解决方案来捕获有效事件,您可以执行类似的操作
$("form").submit(function() {
if($(this).valid()) {
//go ahead
} else {
//do some error handling
}
});
【讨论】:
jQuery Validate 希望你处理这个问题的方式是指定一个submitHandler aka “当表单提交并且它有效时运行这个函数”。您可以在该函数中通过 AJAX 提交表单的内容。
$('form').validate({
//your normal options
submitHandler: function(){
$.ajax(...);
}
});
【讨论】:
只要打电话
$("form").valid(); // returns true if valid
而不是
$("form").validate(); //returns $.validate
【讨论】:
你可以像这样实现类似的东西:
var validator = $("#signin_form").validate({
rules: {
Phone: {
required: true,
phone: true
},
VerifyCode: {
required: true,
verifyCode: true
}
},
messages: {},
success: function (label, element) {
if (validator.numberOfInvalids() == 0) {
console.log(true);
}
}
})
【讨论】:
【讨论】: