問題描述

我正在尋找最完整的方式來創建一個沒有提交按鈕的 HTML 表單。這本身很簡單,但是當 submission-like 的事情完成時 (例如,在文本字段中打 Enter),我也需要停止重新加載表單。

最佳解決方案

將一個 onsubmit 處理程序添加到表單中 (通過 plain js 或 jquery $()submit(fn)),並返回 false,除非您的具體條件得到滿足。

除非您不希望表單提交,否則在這種情況下,為什麼不在表單元素上省略’action’ 屬性?

次佳解決方案

您將要將 action="javascript:void(0);"包含在表單中,以防止頁面重新加載並維護 HTML 標準。

第三種解決方案

只需將此事件添加到您的文本字段。它將阻止按 Enter 鍵進行提交,您可以根據需要自由添加提交按鈕或調用 form.submit():

onKeyPress="if (event.which == 13) return false;"

例如:

<input id="txt" type="text" onKeyPress="if (event.which == 13) return false;"></input>

第四種方案

當你以表單形式輸入表單的自然行為是被提交時,為了阻止這種不自然的行為,你必須防止它提交 (默認行為),使用 jquery:

$("#yourFormId").on("submit",function(event){event.preventDefault()})

參考文獻

注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇