我有一个带有自定义按钮的表单,通过ajax(不是真正的提交按钮)提交它。
我正在使用jquery-validation来验证表单,并运行validate().checkForm()
来验证它。
我的问题是 - 当我这样做时,为什么不显示特定字段的错误消息?当我使用标准提交按钮时,它们显示正常。
编辑:我的例子不包括ajax提交,但只是假装它在那里。
答案 0 :(得分:1)
因为validate正在侦听提交事件。
如果在click事件中添加$("form").submit();
,则会触发它。
答案 1 :(得分:0)
小猪支持@weezer所说的,你需要将表单提交事件与按钮点击相关联,你还需要将它放在表单中。现在它坐在它外面。对于未来的更新和理智,它将使您的生活更容易将它们组合在一起。
答案 2 :(得分:-1)
jquery验证由标准表单提交触发。
您可能需要将.click处理程序附加到自定义提交按钮,如下所示:
var isValid = $("#yourForm").valid();
if(isValid) {
// Do stuff
}
是的,我有,如果你把:
$("#submit").click(function() {
var isValid = $("#form").isValid();
if(isValid) {
alert('test');
}
});
而不是您拥有的内容并在表单中移动自定义按钮 ,验证工作正常。 http://jsbin.com/ajeyot/9