Hola:
Mi recomendación será siempre validar tal como lo tienes... ya que de otra forma sería bastante más complejo (siempre que quieras hacerlo bien)...
Podría usar el evento de la pérdida del foco (onblur)... recuerda, siempre en minúsculas... pero tendrías que tener deshabilitado el submit y habilitarlo cuando se controlen todas las validaciones "parciales"...
A eso debes añadirle que de todos modos una buena validación debe hacerse en el servidor.
Saludos