E` un classico esempio di "spaghetti-code", che qualche browser interpreta a modo suo, mentre altri non riescono.
A rigor di logica il form non fa parte del document (e` definito fuori da questo), quindi scrivere document.NOMEFORM non definisce un oggetto.
Dovresti cercare di sistemare il codice innestando correttamente i vari tag.