Listado completo de tutoriales
Evento: submit |
Todo formulario se le puede capturar el evento submit que se dispara previo a enviar los datos del formulario al servidor.
Uno de los usos más extendidos es la de validar los datos ingresados al formulario y abortar el envío de los mismos al servidor (con esto liberamos sobrecargas del servidor)
El evento submit se dispara cuando presionamos un botón de tipo type="submit".
Para probar el funcionamiento del evento submit implementaremos un formulario que solicita la carga de una clave y la repetición de la misma. Luego cuando se presione un botón de tipo "submit" verificaremos que las dos claves ingresadas sean iguales.
<!DOCTYPE html>
<html>
<head>
<title>Ejemplo de JavaScript</title>
<meta charset="UTF-8">
</head>
<body>
<form method="post" action="procesar.php" id="formulario1">
Ingrese clave:
<input type="password" id="clave1" name="clave1" size="20" required>
<br> Repita clave:
<input type="password" id="clave2" name="clave2" size="20" required>
<br>
<input type="submit" id="confirmar" name="confirmar" value="Confirmar">
</form>
<script>
document.getElementById("formulario1").addEventListener('submit', validar);
function validar(evt) {
let cla1 = document.getElementById("clave1").value;
let cla2 = document.getElementById("clave2").value;
if (cla1 != cla2) {
alert('Las claves ingresadas son distintas');
evt.preventDefault();
}
}
</script>
</body>
</html>
Tengamos en cuenta que la primer línea indica que se trata de una página de HTML5:
<!doctype html>
Definimos un formulario que solicita la carga de dos claves y un botón submit para enviar los datos al servidor:
<form method="post" action="procesar.php" id="formulario1"> Ingrese clave: <input type="password" id="clave1" name="clave1" size="20" required> <br> Repita clave: <input type="password" id="clave2" name="clave2" size="20" required> <br> <input type="submit" id="confirmar" name="confirmar" value="Confirmar"> </form>
Registramos el evento submit del formulario:
document.getElementById("formulario1").addEventListener('submit', validar);
La función validar extrae los contenidos de los dos "password" y verificamos si tienen string distintos en cuyo caso llamando al método preventDefault del objeto que llega como parámetro, lo cual previene que los datos se envíen al servidor:
function validar(evt) {
let cla1 = document.getElementById("clave1").value;
let cla2 = document.getElementById("clave2").value;
if (cla1 != cla2) {
alert('Las claves ingresadas son distintas');
evt.preventDefault();
}
}