ciao a tutti!

io ho in una pagina questo piccolo controllo:
codice:
function valida(){
	if (document.getElementById('tipologia').value == ''){
		alert('Specifica la tipologia');
		return false;
	}else if (document.getElementById('provincia').value == ''){
		alert('Specifica la filiale');
		return false;
	}else if (document.getElementById('province_competenza[]').value == ''){
		alert('Specifica le province di competenza');
		return false;
	}
	else{
		return true;
	}
}
e l'intestazione del form è fatta in questo modo:
<form name="form1" method="post" action="aggfilialef.php" onSubmit="return valida();">

e questo funziona correttamente


mentre in un'altra pagina volevo duplicare il controllo e allora ho fatto:
codice:
function controlla(){
	if (document.getElementById('tipologia').value==""){
		alert("Specifica la tipologia dell'utente");
		return false;
	}
	else if (document.getElementById('nome').value==""){
		alert("Specifica il nome del nuovo utente");
		document.getElementById('nome').focus();
		return false;
	} else if(document.getElementById('cognome').value==""){
		alert("Specifica il cognome del nuovo utente");
		document.getElementById('cognome').focus();
		return false;
	} else if(document.getElementById('operatore').value==""){
		alert("Specifica lo username del nuovo utente");
		document.getElementById('operatore').focus();
		return false;
	} else if (document.getElementById('password').value==""){
		alert("Specifica la password del nuovo utente");
		document.getElementById('password').focus();
		return false;
	} else{
		document.getElementById('form1').action="<?=$_SERVER['PHP_SELF']; ?>";
		document.getElementById('form1').submit();
	}
}
e il form è fatto così:
<form name="form1" id="form1" method="post" onsubmit="controlla();">

ma perché questa mi fa sempre il controllo del form?? anche quando entra in un if e mi ritorna false? :master:

il submit l'ho specificato in un else perchè se lo facevo come il primo non funzionava, ma anche così facendo mi processa sempre e comunque il form...sapete dirmi come mai?

io ci capisco sempre meno di questo js







Grazie mille!