Ciao, il listato che segue serve per validare una form. Funziona benissimo, solo che vorrei che il return posizionasse il cursore sul primo campo errato... e non sull'ultimo come accade ora.... come posso fare?
<script>
function controlla(){
var nome=document.dati.nome.value;
var cognome=document.dati.cognome.value;
var cap=document.dati.cap.value;
var citta=document.dati.citta.value;
var indirizzo=document.dati.indirizzo.value;
var email=document.dati.email.value;
var errore='';
if (nome==''){
errore=errore+'Nome\n';
document.dati.nome.focus();
}
if (cognome==''){
errore=errore+'Cognome\n';
document.dati.cognome.focus();
}
if (cap==''){
errore=errore+'CAP\n';
document.dati.cap.focus();
}
if (citta==''){
errore=errore+'Città\n';
document.dati.citta.focus();
}
if (indirizzo==''){
errore=errore+'Indirizzo\n';
document.dati.indirizzo.focus();
}
if (email==''){
errore=errore+'Mail\n';
document.dati.email.focus();
}if (errore!=''){
alert('ATTENZIONE! I seguenti campi non sono stati compilati correttamente:\n'+errore);
return true;
}else
if (ValidateMail(document.dati.email.value) == false){
alert ("L'indirizzo Mail non è corretto!");
document.dati.email.value = "";
}else{
document.dati.submit()
}
}
</script>