Ciao ragazzi

Ho realizzato un classico form HTML che chiede alcuni dati all'utente.
Ho poi messo un controllo in JavaScript per verificare che tutti i campi richiesti vangano compilati.

Il problema è che questo script funziona solo in parte: JS mi visualizza un alert se il campo non è stato compilato, ma il form html continua comunque ad andare avanti e nonostante il messaggio di errore si viene reindirizzati alla pagina presente in "action".

Dove sbaglio?

Eccovi il codice HTML:

codice:
<form name="iscrizione" id="form_iscrizione" method="post" onsubmit="controllo()" action="subscribe.php">
[............]
<td align="left">
<input type="submit" name="Submit" value="Registrati" >
</td>
</form>
...e questo è il codice JS (incluso ovviamente nella stessa pagina):

codice:
<script language="javascript">
function controllo() {
if (nome.value == "")
            {
       alert ("Tutti i campi devono essere compilati");
       document.forms[form_iscrizione].elements[campo_nome].focus();
       return false;
      }
   else {
   return true;
   }
}
</script>
Il codice JS l'ho messo subito dopo la chiusura del FORM. Ho provato a spostarlo anche tra gli HEAD ma non cambia nulla...

Qualcuno sa dirmi dove sbaglio? :master:
Riepilogando, l'invio dei dati del FORM deve essere interrotto se uno dei campi è vuoto (in questo caso ho specificato solo il campo "nome").
Ogni idea è ben accetta

Grazie, ciao


UPDATE: sotto suggerimento ho fatto alcune modifiche:
- <form name="iscrizione" id="form_iscrizione" method="post" action="subscribe.php">
- <input type="button" onclick="controllo()" name="Submit" value="Registrati" >
- else
{
document.forms["form_iscrizione"].submit();
}

Dopo aver fatto queste modifiche sembrava tutto perfettamente funzionante!
Il problema è che funziona correttamente solo su Chrome e su IE viene visualizzato in basso nella barra grigia la frase "Errore nella visualizzazione della pagina".

Nessuna idea?