Potrebbe esserci un errore nella chiamata.
La tua funzione deve essere chiamata con:
<input type="button" value="invia" onClick="modulo();">
e non ci deve essere il pulsante submit.
Inoltre sarebbe il caso di disabilitare la tastiera nel form (per evitare che venga inviato con il trasto enter).
In alternativa togli il submit dal form (sostituito da return true) e chiami la funzione all'evento onSubmit del form (cosa consigliata)
Ma se i form sono piu` di uno, e devi fare lo stesso controllo in tutti, conviene parametrizzare.
Ciao
Michele