Quiero saber cómo obtener el evento onsubmit
de un formulario para hacer alguna validación de formulario, porque no tengo acceso a él directamente. (Estoy escribiendo un plugin de Wordpress para comentarios, así que no tengo acceso directo a la etiqueta del formulario o al botón de enviar.)¿Cómo tomar el evento onSubmit para un formulario?
Me frustré tanto tratando de hacer esto para mi complemento que he escrito una versión de Hello World abajo. Quiero que muestre la alerta "Hola mundo" cuando cargue la página y la alerta "formulario enviado" cuando hago clic en el botón Enviar. En cambio, muestra ambas ventanas emergentes cuando se carga la página.
Aquí está mi código:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>Hello World</title>
</head>
<body>
<h2>Test</h2>
<form action="#" method="post" id="commentform">
<p><input type="text" name="author" id="author" size="22" tabindex="1" />
<label for="author"><small>Name (required)</small></label></p>
<p><input name="submit" type="submit" id="submit" tabindex="5" value="Submit Comment" />
</form>
<script type="text/JavaScript">
<!--
alert("Hello world");
var formCheck = document.getElementById("commentform");
formCheck.onSubmit = doMapping();
function doMapping() {
alert("form submitted");
return false;
}
-->
</script>
</body>
</html>
Creo que también tendrá que cambiar el orden ya que es necesario definir doMapping antes de asignarlo como el controlador onSubmit. – tvanfosson
Gracias - Edité mi respuesta para abordar su punto. –