jQuery.validate()在单击按钮时触发(我只希望在提交时触发)

jQuery.validate()在单击按钮时触发(我只希望在提交时触发),jquery,forms,jquery-validate,Jquery,Forms,Jquery Validate,我表格的结尾是这样的: <input type="submit" name="login" value="Login" class=" btn btn-primary" > <a href="register.php" ><button class="btn btn-primary" >Register</button></a> <a href="/"><button class="btn btn-pr

我表格的结尾是这样的:

<input type="submit" name="login" value="Login" class=" btn btn-primary" >    
<a href="register.php" ><button class="btn btn-primary" >Register</button></a>    
<a href="/"><button class="btn btn-primary" >Cancel</button></a>
</form>
单击“登录”按钮时,表单将按预期进行验证。但是,单击表单中的两个按钮之一时,表单也会进行验证。其他两个按钮只是链接,我需要它们在表单中,这样我就可以一行显示它们


很可能,这与validate()在表单中的任何按钮上触发:submit有关。我怎么知道它只在实际点击提交按钮时生效?

您需要给按钮一个type='button'

e、 g

取消

这是因为,如果不进行设置,某些浏览器会将其默认为type='submit'。

您需要为按钮指定一个type='button'

e、 g

取消
这是因为,如果不进行设置,某些浏览器会将其默认为type='submit'

jQuery("form#login").validate({
    submitHandler: function(form) {
        $("#loading").modal();
        form.submit();
    }
});
<button class="btn btn-primary" type="button" >Cancel</button>