Javascript 当I';我没有使用提交按钮

Javascript 当I';我没有使用提交按钮,javascript,jquery,jquery-validate,Javascript,Jquery,Jquery Validate,我有一个带有自定义按钮的表单,它通过ajax提交表单(不是真正的提交按钮)。 我使用jquery验证来验证表单,并运行validate().checkForm()来验证表单 我的问题是——为什么我这样做时,特定字段上的错误消息不出现?当我使用标准的提交按钮时,它们看起来很正常 编辑:我的示例不包括ajax提交,只是假设它在那里。jquery验证由标准表单提交触发 您可能需要将.单击处理程序附加到自定义提交按钮,如下所示: var isValid = $("#yourForm").vali

我有一个带有自定义按钮的表单,它通过ajax提交表单(不是真正的提交按钮)。 我使用jquery验证来验证表单,并运行
validate().checkForm()
来验证表单

我的问题是——为什么我这样做时,特定字段上的错误消息不出现?当我使用标准的提交按钮时,它们看起来很正常


编辑:我的示例不包括ajax提交,只是假设它在那里。

jquery验证由标准表单提交触发

您可能需要将.单击处理程序附加到自定义提交按钮,如下所示:

    var isValid = $("#yourForm").valid();

                if(isValid) {
// Do stuff
    }
是的,我有,如果你说:

$("#submit").click(function() { 
    var isValid = $("#form").isValid(); 
    if(isValid) {  
      alert('test'); 
    } 
}); 

验证工作,而不是在表单中移动自定义按钮

因为验证正在侦听提交事件

如果您添加
$(“表单”).submit()在click事件内,然后触发它


根据@weezer所说,您需要将表单提交事件与按钮单击关联起来,并且您还需要将其放入表单本身中。现在它就在它的外面。为了将来的更新和保持清醒,将使您的生活更容易分组。

是的,我有,如果您放入$(“#提交”)。单击(函数(){var isValid=$(“#表单”).isValid();if(isValid){alert('test');});验证可以工作,而不是在表单中移动自定义按钮。很抱歉如果你编辑你的答案来包含这个建议,我会投票给它(在编辑之前我现在不能投票)。你是说JS应该在表单中吗?不,我是说button元素应该在表单中。