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 :

Parser du XML en javascript


Sujet :

JavaScript

  1. #1
    Membre confirmé
    Homme Profil pro
    Fondateur
    Inscrit en
    Octobre 2002
    Messages
    445
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Fondateur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2002
    Messages : 445
    Points : 503
    Points
    503
    Par défaut Parser du XML en javascript
    Bonjour,

    Je tente de faire une petite applicaton qui récupère des données contenues dans un fichier xml via javascript.
    Pour cela, j'utilise XMLHttpRequest et j'arrive ensuite à parser en partie mon document XML.

    Pour récupérer les attributs d'un tag précis, j'utilise en gros la ligne suivante (adaptée à mes besoins ensuite) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    reqXML.responseXML.getElementsByTagName("nom_du_tag")[0].getAttribute("nom_attribut");
    où reqXMLest une instance de l'objet XMLHttpRequest.
    Ceci marche bien.

    Cependant, j'ai quelques problèmes pour récupérer les valeurs de certains tags imbriqués.

    Par exemple si l'on a

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <rte><number>0</number><name>Test</name></number></rte>
    Ici, je pourrais récupérer le contenu entre les balises number et name en me servant de getElementsByTagName de la manière suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    reqXML.responseXML.getElementsByTagName("nom_du_tag")[0].firstChild.nodeValue;
    Cependant en me servant de ça et en parcourant tous les tags number, j'aurais toutes les valeurs des tags number ici mais en dehors du contexte c'est-à-dire que le fait que ce soit imbriqué dans le tag rte ne serait pas pris en compte pour mon traitement après.

    Ce que j'aimerais arriver à faire c'est la chose suivante :

    - Chercher les tags rte (ça je sais le faire)
    - et ensuite pour chacun de ces tags, parcourir chacun des fils de ce tag et faire le traitement adéquat.

    Et malheureusement, je n'arrive pas à faire cette seconde étape, je n'arrive pas à parcourir les fils d'un tag et récupérer les valeurs contenues dans ces tags.

    Si quelqu'un avait une idée de la manière de récupérer ces informations, je suis preneur.


    Merci d'avance de votre aide.

    Sylvain.

  2. #2
    Membre actif

    Inscrit en
    Mars 2003
    Messages
    241
    Détails du profil
    Informations forums :
    Inscription : Mars 2003
    Messages : 241
    Points : 239
    Points
    239
    Par défaut
    Si tu utilise Firefox, il se trouve que celui-ci ajoute des balises vides dans le DOM... Pour avoir un traitement identique à tout navigateurs, il faut donc effacer ces balises vides...

    Plus de détails dans la FAQ...

    [EDIT] Un node cleanner ici...

  3. #3
    Expert confirmé
    Avatar de siddh
    Inscrit en
    Novembre 2005
    Messages
    3 868
    Détails du profil
    Informations personnelles :
    Âge : 48

    Informations forums :
    Inscription : Novembre 2005
    Messages : 3 868
    Points : 5 011
    Points
    5 011
    Par défaut
    chaque élément a un childNodes qui est une nodeList de tous ses enfants.

    Ca se manipule comme un tableau.

  4. #4
    Membre confirmé
    Homme Profil pro
    Fondateur
    Inscrit en
    Octobre 2002
    Messages
    445
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Fondateur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2002
    Messages : 445
    Points : 503
    Points
    503
    Par défaut
    Effectivement merci, j'avais pas bien lu la documentation de DOM.

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

Discussions similaires

  1. Parser XML avec Javascript
    Par mouss75 dans le forum Général JavaScript
    Réponses: 14
    Dernier message: 30/08/2011, 17h29
  2. Parser de gros fichiers XML en JavaSCript via SAX
    Par alatox dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 18/03/2010, 15h57
  3. [C#] Parser du XML
    Par karl3i dans le forum Windows Forms
    Réponses: 5
    Dernier message: 27/02/2009, 09h46
  4. xml et javascript
    Par mati dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 09/08/2005, 15h06
  5. [XSL] Parser fichier xml : erreurs + incompréhensions
    Par totobouchon dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 19/07/2005, 15h47

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