when I put invalid id and password, the page just display the error message and refresh the page. Since I don't want the page to get refresh, how to stop the 'submit'.
const accounts = [
["myaccount", "mypassword1"],
["myaccount2", "mypassword2"],
];
const event = document.getElementById("info");
event.addEventListener("submit", (e) => {
accounts.forEach((element) => {
if (element[0] === id && element[1] === password) {
pass = true;
}
});
if (pass) {
signInForm.action = "builder.html";
} else {
e.stopPropagation();
document.getElementById("error").innerText = "error";
}
});
Try using event.preventDefault() method.
https://www.w3schools.com/jsref/event_preventdefault.asp
else {
e.preventDefault();
e.stopPropagation();
document.getElementById("error").innerText = "error";
}
This might help too - https://developer.mozilla.org/en-US/docs/Web/API/Event/stopPropagation
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.