Hola:
Cuando se hace submit desde el método del mismo nombre del formulario, no tiene sentido el manejador de eventos del mismo nombre, porque se activa cuando se envía mediante algún botón submit... siempre es aconsejable usar un botón del mismo nombre por cuestiones de accesibilidad
![Pensando](http://static.forosdelweb.com/fdwtheme/images/smilies/scratchchin.gif)
... siempre puedes darle al botón "aspecto" de enlace con estilos...
Si todos modos insistes en usar un link forzando el envío, te recomiendo que sigas con tu sistema y en el link pongas algo así:
<a href="javascript
: if (login(document.form[0]) document.forms[0].submit())"
Siempre haciendo que login devuelva false para cancelar... y como ya te han puesto, volver a validar en el server (por si las moscas)
Saludos