引用操作:
“我正在尝试在验证表单后使用 ajax 发布表单”
根据文档,您ajax
进入submitHandler
回调函数。
submitHandler(默认:原生表单提交)
类型:Function()
表单有效时处理实际提交的回调。获取表单作为唯一参数。替换默认提交。验证后通过 Ajax 提交表单的正确位置。
使用此回调,会自动捕获点击,并且该函数仅在有效表单上触发。
$(function () {
var validator = $("#myForm").validate({
// rules and options,
submitHandler: function(form) {
// your ajax goes here
alert("valid form");
return false;
}
});
});
演示:http: //jsfiddle.net/fXDwd/
引用操作:
“不过,这.valid
似乎是错误的。”
编辑
根据 OP 的评论和更新的 jsFiddle:
如果您想让多个提交按钮在一个表单上执行不同的操作,click
请为您已经完成的每个按钮构建处理程序。现在您必须将这些按钮移到容器外部。<form></form>
否则,插件会将它们视为普通submit
按钮并干扰您的点击处理程序。
另一个问题是您的.valid()
. 将它附加到form
元素,,$("#myForm")
而不是验证器初始化对象。
HTML:
<form id="myForm" action="">
...
</form>
<input type="button" id="submit" value="Submit form" />
<input type="button" id="submit2" value="Submit form2" />
jQuery :
$(function () {
var validator = $("#myForm").validate({
// rules and options
});
$('#submit').click(function () {
alert($("#myForm").valid());
//do something
});
$('#submit2').click(function () {
alert($("#myForm").valid());
//do something else
});
});
演示:http: //jsfiddle.net/vfrGU/