Ajax : responseXML

Ajax : responseXML - XML/XSL - Programmation

Marsh Posté le 15-11-2007 à 18:04:17    

Bonjour a tous,
 
apres une journee entiere de galere et recherche, je me permets de m'adresser a vous pour une solution! :)
 
je suis entrain de mettre en place les liste autocompletion. mais je bloque lorsque je veux recuperer le contenu en xml, en text ca marche bien mais en en xml :(
 
voici mon code:
 
...
XhrObj.onreadystatechange = function()
{
 if (XhrObj.readyState == 4 && XhrObj.status == 200)  
 {  
  var doc = XhrObj.responseXML;
  var val = doc.getElementsByTagName('res).item(0);;
  alert(val.firstChild.data);
 }
}
...
 
les resultats sont generes ds un fichers externe 'recherche.php' avec comme entete: <?xml version="1.0" ?>
 
avec alert(val.firstChild.data) g un message d'erreur ds la bare d'etat d'internet explorer.
 
auriez vous une idee svp???
 
Merci de votre aide

Reply

Marsh Posté le 15-11-2007 à 18:04:17   

Reply

Marsh Posté le 15-11-2007 à 20:06:01    

Et sinon, l'erreur que te balance IE, on doit la trouver en lisant une boule de cristal ?
 
Bon, sinon, si tu as un contrôle sur les données que tu envoies à ton script, je laisserais tombé le XML, tellement c'est la merde à parser avec l'API DOM. Envoie un fichier texte prémaché (genre une entrée par ligne) et recupère le tout avec un XhrObj.responseText.split('\n')
 

Reply

Marsh Posté le 15-11-2007 à 20:11:06    

Plus pratique encore, le JSON !
récupere les donnes comme ceci :

Code :
  1. var data = eval ('(' + XhrObj.responseText + ')');
 

tu peux acceder ensuite à tes données comme avec un tu le ferais avec un (pseudo-)objet javascript :
var d = data.valeur

 

Tout simplement :)

 

Plus d'infos là : http://www.quirksmode.org/blog/arc [...] espon.html

 

EDIT: bien sur le format des données retournées est important ;)


Message édité par SICKofitALL le 16-11-2007 à 10:31:22

---------------
We deserve everything that's coming...
Reply

Marsh Posté le 16-11-2007 à 10:17:23    

Reply

Marsh Posté le 16-11-2007 à 11:09:45    

oui, je sais, je suis desole, je ne savais pas trop si je devais poster ds la partie javascript ou xml :( encore desole!!
je v repondre dans l'autre post pour leur demander de repondre ici...
 
Le probleme avec responseText est que je ne peux pas transmettre des variables tels que le nombre de resultats, ou y a t il un moyen de le faire?
 
sinon, g pas mal avance et compris le mecanisme, g par contre un tout ptit souci :
 
si j'ai un fichier xml du genre :
 
<results>
    <result nb='22'>Je suis un test1.</result>
    <result nb='56'>Je suis un test2.</result>
</results>
 
cmt pourrais-je recupere la valeur de nb ? et comment afficher 'Je suis un test1' et 'Je suis un test2' ??
 
desole pour cette question bete, mais je ne connais pas du tout le xml!!
 
vrmt, merci bp de votre aide, vous me sauvez!!


Message édité par redah75 le 16-11-2007 à 13:40:20
Reply

Marsh Posté le 16-11-2007 à 16:09:59    

personne ne peut m'aider??? :(

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed