Rechercher : dans
Par :

Aide AJAX: httpRequest.responseText ...

Dernière réponse le 21 mai 2008 à 19:41:41 Freddy_666, le 21 mai 2008 à 12:42:23 
 Signaler ce message aux modérateurs

Bonjour,
Je suis actuellement en train d'apprendre les requêtes Http, et un problème me perturbe, pour vous l'expliquer voici le code que j'utilise:
function faire_requete(url)
{
httpRequest = creer_requete();
httpRequest.onreadystatechange = function ()
{
if (httpRequest.readyState == 4)
{
if (httpRequest.status == 200)
{
return httpRequest.responseText;
}
else
{
alert('Un problème est survenu avec la requête.');
}
}
}
httpRequest.open("GET", url, true);
httpRequest.send(null);
}
hors, le return httpRequest.responseText; me retourne rien (undefined). J'ai donc essayer de remplacer la ligne par :
avert(httpRequest.responseText);
Pour essayer de voir si sa fonctionne, et bien j'ai de la chance, sa m'affiche le bon resultat.
Alors comment faire pour que sa fonctionne avec le return ?

PS: la fonction creer_requete() permet d'initialiser la requete Http selon le navigateur.

Merci de vos reponses.

Configuration: Windows Vista
Firefox 2.0.0.14

Meilleures réponses pour « Aide AJAX: httpRequest.responseText ... » dans :
AJAX (Asynchronous Javascript And XML) VoirIntroduction à AJAX AJAX (Asynchronous Javascript And XML, traduisez Javascript asynchrone et XML) est une méthode de développement web basée sur l'utilisation d'un script Javascript pour effectuer des requêtes web à l'intérieur d'une page web...
AJAX (Asynchronous Javascript And XML) VoirAvantages liés à AJAx Les sites web utilisant AJAX bénéficient des avantages suivants : Une interface réactive car AJAX permet de modifier localement la page web ; Une rapidité d'exécution car seules les données à modifier dans la page sont...
AJAX (Asynchronous Javascript And XML) VoirAvantages liés à AJAx Les sites web utilisant AJAX bénéficient des avantages suivants : Une interface réactive car AJAX permet de modifier localement la page web ; Une rapidité d'exécution car seules les données à modifier dans la page sont...

1

Alain_42, le 21 mai 2008 à 18:23:51
  • +1

Bonsoir,

Ajax ne fonctionne pas tout à fait comme une fonction "classique"

si tu mets dans la fonction qui traite la réponse:

return httpRequest.responseText;


le return envoie la réponse à qui ? à la fonction qui l' a appelée ??

si par alert tu vois bien la réponse attendue, il faut que tu opères différemment

au lieu du return, si tu veux par exemple que la réponse s'écrive dans une partie de ta page HTMl, à l'endroit de ta page tu mets:

<div id="id_ecrire"><!-- la sera chargee la reponse --></div>

et à la place du return tu mets:

var obj=document.GetElementById('id_ecrire');
obj.innerHTML=httpRequest.responseText;

Répondre à Alain_42

2

 Freddy_666, le 21 mai 2008 à 19:41:41
  • +1

Ok merci, la solution fonctionnait comme sa mais je cherchais a faire plus compliqué....
Mais j'ai trouvé une direction différente qui marche plutôt bien. C'est aussi un innerHTML mais dynamique avec l'ID passé en paramètre...

En tout cas, encore merci.

Répondre à Freddy_666
Collection CommentÇaMarche.net