en primer lugar la validacion es recomendable realizarla en el evento onsubmit del elemento FORM. segundo y mas importante, la validacion del lado cliente
no es segura por lo que la validacion deberia realizarse en el lado servidor. la validacion de lado cliente es simplemente una ayuda inmediata para que el usuario pueda corregir los datos sin tener que realizar varias peticiones al servidor. aca te dejo un tutorial de un gran amigo y colaborador del foro,
el abc de los formularios