我正在使用一個(gè)用 javascript 構(gòu)建的虛擬鍵盤作為在嵌入式系統(tǒng)上運(yùn)行的用戶界面。虛擬鍵盤的源代碼可以在這里找到:https ://codepen.io/dcode-software/pen/KYYKxP我只更改了源代碼中的一個(gè)部分。Keyboard.js 文件第 141-151 行:case "enter": keyElement.classList.add("keyboard__key--wide"); keyElement.innerHTML = createIconHTML("Enter"); keyElement.addEventListener("click", () => { this.properties.value += "\n"; this._triggerEvent("oninput"); /** * The part that i modified */ document.querySelector("form").submit(); }); break;基本上,我在這里要做的是在按下虛擬鍵盤上的“enter”鍵時(shí)在當(dāng)前頁面上提交表單。(效果很好)但我也想防止默認(rèn)此提交事件。( e.preventDefault()) 那么我該如何實(shí)現(xiàn)呢?感謝您的幫助。編輯:我已經(jīng)添加e.preventDefault()到提交功能。這是我處理登錄表單提交的代碼://Loginconst loginForm = document.querySelector("#login-form");loginForm.addEventListener("submit", async (e) => { e.preventDefault(); const errorContainer = document.querySelector("#login-form-message"); errorContainer.innerHTML = ""; try { //Submitting form } catch (error) { //Handle error }});
通過javascript提交HTML表單并防止默認(rèn)
守候你守候我
2023-05-18 10:04:20