IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

[DOM] Parcours XML


Sujet :

JavaScript

  1. #1
    Membre éprouvé Avatar de speedev
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 051
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 051
    Par défaut [DOM] Parcours XML
    Bonjour,

    Je ne parviens pas à récupérer les noeuds d'un XML que je génère en PHP.
    Un appel AJAX génère ce XML qui contient une liste d'éléments avec des propriétés (mais aucun attributs). J'aimerai, pour chaque noeuds principal récupérer tous les noeuds.

    Voici un ex d'XML :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <commentaire>
    <auteur>toto</auteur>
    <date>21/10/2007</date>
    </commentaire>
     
    <commentaire>
    <auteur>titi</auteur>
    <date>22/10/2007</date>
    </commentaire>
    Mon code JS (fonction callback ajax), avec des tests d'alert (j'ai mis en commentaire ce que l'alerte m'affiche)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    function res_add_comment(obj)
    {	
    		var t_com = obj.responseXML.getElementsByTagName('commentaire');
    		for (i=0;i<t_com.length;i++)
    		{
    			commentaire = t_com[i];	
    			//alert(commentaire.nodeName); // affiche "commentaire"
    			alert(commentaire.childnodes[0].nodeValue); // vide
    			alert(commentaire.childnodes[0].text); // plantage
    			alert(commentaire.childnodes[1].text); // null
    			alert(commentaire.childnodes[1].nodeValue); // #text
    		}
    }
    J'aimerai donc récupérer les valeurs des noeuds "auteur" et "date".

    Merci

  2. #2
    Membre éprouvé Avatar de speedev
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 051
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 051
    Par défaut
    Bon finalement j'ai trouvé avec w3school.
    http://www.w3schools.com/dom/default.asp
    Il faut faire pas mal de contrôle pour parcourir un XML, je ne le savais pas, voici ma solution :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    commentaire = t_com[i];	
    if(commentaire.hasChildNodes())
    {
    	noeuds = commentaire.childNodes;
    	for(j=0;j<noeuds.length;j++)
    	{
    		if(noeuds[j].nodeType == 1)
    		{
    			alert(noeuds[j].childNodes[0].nodeValue); // affiche le contenu des noeuds
    		}
    	}
    }
    Ca servira à d'autres.

    Salut!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [DOM] Validation xml avec PHP
    Par thefaycal dans le forum Bibliothèques et frameworks
    Réponses: 6
    Dernier message: 26/01/2006, 21h15
  2. [DOM] Parsage XML en PHP 4
    Par Huntress dans le forum Bibliothèques et frameworks
    Réponses: 7
    Dernier message: 07/12/2005, 22h24
  3. Parcours xml
    Par jeff_! dans le forum Général JavaScript
    Réponses: 21
    Dernier message: 30/11/2005, 17h08
  4. [JAXB/DOM] Parser Xml : possible avec path reel et non uri !
    Par Jaxofun dans le forum Servlets/JSP
    Réponses: 7
    Dernier message: 01/08/2005, 10h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo