Se all'interno della funzione c'e' anche una sola riga sbagliata questa non viene eseguita...

Prova ad agire per sezioni... comincia col lasciare il solo alert() iniziale, poi aggiungi i vari controlli...

Oppure posta tutta la funzione

ciao