Salve a tutti.
Premetto che utilizzo AJAX da poco tempo e forse non ho ancora le idee molto chiare.
Ho un form contenente un unico campo input che inizia con questa riga di codice:
Il mio obiettivo è che il contenuto del campo venga verificato tramite una chiamata AJAX per controllare che il valore immesso esista nel database. Se AJAX ritorna 0 (cioè il valore immesso non esiste) vorrei dare un Alert e bloccare il form.codice:<form method=post action='nl3.php' onsubmit='return checkEmail(emailu)'>
Questo è il mio codice JS:
In altre situazioni ho usato codice simile per scrivere messaggi o dati in un div e funziona bene, ma qui non riesco a capire come restituire un "false" al form per impedirne l'invio.codice:function checkEmail(campo) { var email = campo.value; if (email=="") { alert("Si prega inserire indirizzo email"); return false; } myRequest = CreateXmlHttpReq(myHandler); myRequest.open("GET","../AJAX/SERV_checkemail.php?email="+email); myRequest.send(null); return myHandler(); } function CreateXmlHttpReq(handler) { var xmlhttp = null; xmlhttp = new XMLHttpRequest(); xmlhttp.onreadystatechange = handler; return xmlhttp; } function myHandler() { if (myRequest.readyState == 4 && myRequest.status == 200) { alert(myRequest.responseText); } if (myRequest.readyState == 4 && myRequest.status != 200) { alert("File php non disponibile " + myRequest.status); } }
Chiaramente è proprio una mia lacuna concettuale, non un errore di codice. Grazie mille a chi mi aiuterà.

Rispondi quotando
