non riesco ad uscirne:

ho un modulo di registrazione con diversi campi tra cui:
codice:
<input class="reg" type="text" name="cap" />
<input class="reg" type="text" name="comune" />
<input class="reg" type="text" name="indirizzo" />
<input class="reg" type="text" name="email" />
<input class="reg" type="text" name="user" />
<input class="reg" type="text" name="pass" />
ho creato il validate.js:

codice:
if (indirizzo == '')
        {
       alert("Inserire il proprio indirizzo.");
       document.registrazione.indirizzo.focus();
       return false;
        }
if(email == '')
       {
        alert("Inserire email");
        document.registrazione.email.focus();
        return false;
        } 
if(!email.value.match(/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/))
        {
        alert("Email errata correggere");
        document.registrazione.email.focus();
        return false;
        }
if (user == '')
        {
         alert("Scegliere una UserName.");
         document.registrazione.user.focus();
         return false;
        }
mi convalida correttamente fino a dirmi che la email non è inserita, se inserico però una email da invalidare es ' 123@' e niente altro non mi rimanda l'alert dicendo di correggere e non passa nemmeno a verificare gli altri campi che sono vuoti ma invia direttamente il modulo.

come posso fare?
grazie