是否可以阻止提交按钮提交直到加载DOM?

时间:2011-07-31 14:51:41

标签: jquery jquery-validate

我正在使用jquery validate plugin进行表单验证。它工作得很好,但是如果DOM未完全加载并且您单击“提交”按钮,则文档将忽略验证并转到“action”属性中指定的页面。是否可以阻止提交按钮提交,直到加载DOM?

3 个答案:

答案 0 :(得分:7)

如果您生成提交按钮,请执行以下操作:

<input type="submit" id="submit" value="submit" disabled="disabled"/>

然后,您可以在验证插件初始化后立即将其放在$(document).ready(中:

$("#submit").prop("disabled", false);

演示:http://jsfiddle.net/nZVrs/

答案 1 :(得分:4)

您最初可以使用以下内容发出表单:

<form ... onsubmit="return false;">
....
</form>

然后在JavaScript中,在您准备好时更改要“激活”的表单的onsubmit处理程序。

答案 2 :(得分:0)

DOMContentLoaded被解雇之前,有人会如何确切地提交表单?只是好奇?

如果我们正在谈论window.onload那么我会理解,因为页面可能需要一些时间来完全加载(特别是如果以前没有缓存内容)但是DOMContentLoaded

在大多数情况下,在页面开始渲染之后它会如此快速地激发它几乎不可能快速并提交表单。