我正在使用jQuery驗證插件進行表單驗證。它很好用,但是如果DOM沒有被完全加載,並且你點擊了提交按鈕,那麼文檔將忽略驗證並進入一個在「action」屬性中指定的頁面。是否有可能阻止提交按鈕提交,直到DOM加載?是否可以阻止提交按鈕提交,直到DOM加載?
<form ... onsubmit="return false;">
....
</form>
然後在JavaScript中,改變要「激活」,當你準備的形式onsubmit
處理程序:
我正在使用jQuery驗證插件進行表單驗證。它很好用,但是如果DOM沒有被完全加載,並且你點擊了提交按鈕,那麼文檔將忽略驗證並進入一個在「action」屬性中指定的頁面。是否有可能阻止提交按鈕提交,直到DOM加載?是否可以阻止提交按鈕提交,直到DOM加載?
<form ... onsubmit="return false;">
....
</form>
然後在JavaScript中,改變要「激活」,當你準備的形式onsubmit
處理程序:
如果你生成你像這樣的提交按鈕:
<input type="submit" id="submit" value="submit" disabled="disabled"/>
然後,你可以把這個在您的$(document).ready(
之後的驗證插件已經被初始化:
$("#submit").prop("disabled", false);
你可能喜歡的東西最初發出的形式。
在DOMContentLoaded
被解僱之前,如何提交表格?只是好奇?
如果它是window.onload
我們在談論然後我會理解,因爲一個頁面可能需要一些時間來完全加載(尤其是如果內容以前沒有緩存),但DOMContentLoaded
?
在大多數情況下,它在頁面開始渲染後觸發很快,幾乎不可能很快並提交表單。
這就是我會做的。 – ninetwozero
該解決方案的缺點是,您的表單不適用於JavaScript。 – Peter
也可以通過在文本輸入上按ENTER鍵來提交表單,因此您可能還需要禁用表單中的所有輸入... –