Hola:
Siempre usa un botón submit y la validación del tipo:
<form onsubmit="return validar(this)"...
La función validar que devuelva false cuando no valide; y para cosas importantes implementa también validaciones en el servidor (bueno, en realidad la validación que vale debe ser la del servidor)
Debes considerar que los visitantes a tu página pueden tener javascript desactivado.
Saludos