Ajax renvoi true ou false

Fermé
rudak Messages postés 590 Date d'inscription samedi 7 juin 2008 Statut Membre Dernière intervention 4 juin 2011 - 29 août 2010 à 17:25
rudak Messages postés 590 Date d'inscription samedi 7 juin 2008 Statut Membre Dernière intervention 4 juin 2011 - 29 août 2010 à 20:46
Bonjour,
je fait une vérification très simple en ajax et j'aimerai que ma fonction me renvoie true ou false mais je n'y parvient pas, voici mon code qui ne renvoie rien...

function demande(pseudo)
{		
    var xhr = getXMLHttpRequest();
    xhr.onreadystatechange = function()
    {
        if (xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0))
        {
	if(xhr.responseText == "libre")
	{
	    alert(pseudo.value+" est libre");
	    return true;
	}
	else
            {
	    alert(pseudo.value+" déja pris !");
	    return false;
            }
        }
    }
    xhr.open("POST", "php/ajax.verif_pseudo.php", true);
    xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xhr.send("pseudo="+pseudo.value);
}

4 réponses

avion-f16 Messages postés 19250 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 22 décembre 2024 4 505
29 août 2010 à 20:00
Salut.
Aucune erreur dans la console (Ctrl+Maj+J) ?
0
rudak Messages postés 590 Date d'inscription samedi 7 juin 2008 Statut Membre Dernière intervention 4 juin 2011 46
Modifié par rudak le 29/08/2010 à 20:11
je pige pas pourquoi quand je fait

if(demande(obj_pseudo)) 
    alert("c'est bon"); 
else 
    alert("c'est pas bon"); 


j'ai pas true...
0
avion-f16 Messages postés 19250 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 22 décembre 2024 4 505
29 août 2010 à 20:43
« j'ai pas true... »
Tu ne lui de demande pas d'afficher le résultat de demande() ...
Soit il t'affiche "C'est bon", soit "C'est pas bon".
Il n'y a aucun problème d'abord.
0
rudak Messages postés 590 Date d'inscription samedi 7 juin 2008 Statut Membre Dernière intervention 4 juin 2011 46
29 août 2010 à 20:46
nan mais je voulais dire il m'affiche false a chaques fois je comprends pas
c'est pas grave j'ai fait autrement.
merci quand meme
0