使用jQuery submitHandler方法时,我将表单数据通过ajax发布到服务器。成功时,会调用另一个方法来调整弹出窗口的大小,并通知用户其全部完成。
然而,我的问题是,在发布数据时,表单会再次被验证,从而导致不良影响。
我的理解是submitHandler不应该再次触发验证?
submitHandler: function(form) {
console.log('test');
}
在这种情况下,'test'被记录到控制台,但验证正在再次运行(在这种情况下,在电子邮件地址字段上进行服务器端有效性检查)。
我正在使用按钮类型提交作为表单元素。我是否需要防止默认或类似的事情?
答案 0 :(得分:8)
submitHandler
函数中应存在validate
。此外,您应该自己调用form.submit()
,这将删除原本存在的递归调用。
$("#myForm").validate({
submitHandler: function (form) {
console.log('test');
form.submit();
}
});