Hola:
No estoy nada de acuerdo con esto:
Cita:
Iniciado por Pantaláimon
La idea es que event.preventDefault() se pone al inicio de la función para evitar la acción por defecto que haría el evento submit. Luego si los inputs son correctos haces el submit mediante this.submit();
...
Particularmente suelo considerar también viejas versiones de explorer y junto con preventDefault(), cancelo con returnValue = false...
Pero sobre la cancelación del evento, siempre debe ser la última de las instrucciones, siempre que falle la validación... es más, las validaciones importantes siempre deben hacerse en el servidor.
Saludos