Estoy tratando de escribir un código que tome una entrada, pero tengo problemas porque cuando se envía el formulario, la página se actualiza.
Este es mi código:
const changeColour = () => { console.log("Submitted"); const colourForm = document.getElementById("testForm"); const newColour = colourForm.querySelector("input").value; console.log(newFinish); }; const newForm = vehicle.querySelector(".vehicle-colour"); newForm.addEventListener("submit", changeFinish); En el registro de la consola, recibo Submitted y el valor de newColour , que es mi resultado deseado, pero solo está allí por una fracción de segundo y luego la página se actualiza. No estoy muy seguro de cómo evitar que la página se actualice.
Llamar al método .preventDefault del evento activado debería detener el envío de la página.
cambio
newForm.addEventListener("submit", changeFinish);a
newForm.addEventListener("submit", event => { event.preventDefault(); changeFinish(event); });changeFinish debe ser una función con "evento" como argumento.
const changeFinish = event => { event.preventDefault(); /* code here */ }