簡體   English   中英

如果未填寫必填字段,如何防止提交表單上的函數調用?

[英]How to prevent function call on submit form if required fields are not filled out?

我有需要輸入的表單,它實際上看到空字段並顯示消息,但它從提交按鈕調用函數

<form action="">
    <input required id="1" type="text">
    <button type="submit" onclick="calculate()">Calculate</button>
</form>

無論何時單擊按鈕, onclick偵聽器都會運行。

您希望該函數僅在表單開始提交時運行,因此將submit偵聽器附加到表單:

<form action="" onsubmit="calculate()">
    <input required id="1" type="text">
    <button type="submit">Calculate</button>
</form>

 const calculate = (e) => { console.log('calculating'); }
 <form action="" onsubmit="calculate()"> <input required id="1" type="text"> <button type="submit">Calculate</button> </form>

如果可能的話,最好使用 Javascript 而不是內聯 HTML 屬性正確附加事件偵聽器:

document.querySelector('form').addEventListener('submit', calculate);

 const calculate = (e) => { e.preventDefault(); console.log('calculating'); }; document.querySelector('form').addEventListener('submit', calculate);
 <form action=""> <input required id="1" type="text"> <button type="submit">Calculate</button> </form>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM