如果jQuery validate插件的submitHandler回调函数导致死循环,可能是因为在submitHandler中又触发了表单的提交操作,导致submitHandler被无限循环调用。
要解决这个问题,可以采取以下方法之一:
submitHandler: function(form) {
// 执行表单提交操作
// ...
// 阻止表单的默认提交行为
return false;
}
var submitted = false;
submitHandler: function(form) {
if (!submitted) {
submitted = true;
// 执行表单提交操作
// ...
}
}
这样,在第一次执行submitHandler时,设置标记变量为true,执行表单的提交操作。之后的submitHandler调用中,判断标记变量为true时,不再执行表单的提交操作,避免死循环。