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 contenant des balises HTML


Sujet :

JavaScript

  1. #1
    Membre habitué
    Avatar de romuluslepunk
    Homme Profil pro
    Juste passioné
    Inscrit en
    Avril 2005
    Messages
    174
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Belgique

    Informations professionnelles :
    Activité : Juste passioné

    Informations forums :
    Inscription : Avril 2005
    Messages : 174
    Points : 154
    Points
    154
    Par défaut Parser du XML contenant des balises HTML
    Bonjour,

    je récupère via ajax du xml et y prend le contenu d'une balise pour l'insérer dans un div html.

    Voici mon fichier xml :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?xml version="1.0" encoding="UTF-8"?>
    <reponse>
        <titre>ok</titre>
        <contenu>essai : ok</contenu>
    </reponse>
    Voici mon script pour le parser :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    if (window.DOMParser)
    	{
    	parser=new DOMParser();
    	xmlDoc=parser.parseFromString(resultat,"text/xml");
    	}
    else
    	{
    	xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
    	xmlDoc.async="false";
    	xmlDoc.loadXML(resultat);
    	}
     
    var titre = xmlDoc.getElementsByTagName("titre")[0].childNodes[0].nodeValue;
    var contenu = xmlDoc.getElementsByTagName("contenu")[0].childNodes[0].nodeValue;
     
    document.title = titre;
    document.getElementById("contenu").innerHTML = contenu;
    La variable resultat étant la réponse reçu via ajax.

    Tout allait bien jusqu'à ce que j'insère des balises HTML entre les <contenu></contenu>.
    La parser plante, Il ne récupère que le texte jusqu'à la 1ere balise HTML fermante.
    Logique qu'il veut parser les balises HTML.

    Pour y remédier, j'ai mis une section CDATA dans cette balise contenu :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <?xml version="1.0" encoding="UTF-8"?>
    <reponse>
        <titre>ok</titre>
        <contenu>
            <![CDATA[essai : <div>ok</div>]]>
        </contenu>
    </reponse>
    Le résultat est que avec ou sans balises HTML, la variable contenu est vide.
    Du moins elle n'est pas null mais comporte 3 caractères (je le sais grâce à contenu.length) mais rien ne se met dans ma balise via innerHTML ni même dans une alert().

    Une bonne âme pour m'aider a arrêter de tourner en rond ?
    Merci

  2. #2
    Membre habitué
    Avatar de romuluslepunk
    Homme Profil pro
    Juste passioné
    Inscrit en
    Avril 2005
    Messages
    174
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Belgique

    Informations professionnelles :
    Activité : Juste passioné

    Informations forums :
    Inscription : Avril 2005
    Messages : 174
    Points : 154
    Points
    154
    Par défaut
    Problème résolu, il fallait choisir le noeud 1 de la balise :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var contenu = xmlDoc.getElementsByTagName("contenu")[0].childNodes[1].nodeValue;

  3. #3
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    16 959
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 16 959
    Points : 44 122
    Points
    44 122

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

Discussions similaires

  1. API Java pour parser un XML avec des balises avec nom de package
    Par rebelle49 dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 11/08/2014, 13h22
  2. Réponses: 2
    Dernier message: 15/05/2014, 20h52
  3. Problème avec XSLT et du XML contenant des balises HTML
    Par xamber dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 02/11/2011, 11h45
  4. XML interprétation des balises HTML
    Par poypoy31240 dans le forum XML/XSL et SOAP
    Réponses: 1
    Dernier message: 31/05/2010, 14h21
  5. [JDOM] Parser un xml contenant des caractères spéciaux
    Par Baptiste Wicht dans le forum Format d'échange (XML, JSON...)
    Réponses: 16
    Dernier message: 19/07/2006, 11h57

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