我是 JavaScript 新手。如果任何驗證條件回傳 false,我需要阻止表單提交。
前任:-
if((document.getElementById("name").value)==""){
alert("'Name' field can not be empty");
return false;
}
我試過<form onsubmit="return validate();">了<form onsubmit="event.preventDefault(); validate();">。這些都沒有幫助。第一個提示相同的警報訊息兩次。第二個不斷提示所有警報訊息。我想要的是,
- 如果有一個錯誤的情況,我需要瀏覽器停止提交表單并提示相關的警報訊息。
- 如果有多個錯誤條件,我需要瀏覽器停止提交表單,只提示一條警報訊息。
有沒有辦法通過使用 JavaScript(無 JavaScript 庫)來實作這一點?
抱歉,如果有任何語法錯誤,英語不是我的第一語言:(
uj5u.com熱心網友回復:
您需要呼叫事件物件的 preventDefault 作為您從 EventListener 的回呼函式中獲得的引數。像那樣:
...
<head>
<script>
window.addEventListener("load",init);
function init()
{document.getElementById("form").addEventListener("submit",function(e)
{e.preventDefault();});}
</script>
</head>
<body>
<form id="form">
<input type="submit">
</form>
</body>
...
您可以呼叫任何引數,也可以在其他地方定義該函式。
...
<script>
window.addEventListener("load",init);
function init()
{document.getElementById("form").addEventListener("submit",handleSubmit);}
function handleSubmit(event)
{event.preventDefault();}
</script>
...
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/425178.html
標籤:javascript html 形式 事件
