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

jQuery Discussion :

Récupérer données d'un XML


Sujet :

jQuery

  1. #1
    Membre très actif
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2008
    Messages
    519
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2008
    Messages : 519
    Par défaut Récupérer données d'un XML
    Bonjour,

    Je cherche à récupérer les informations contenu dans un XML avec JQuery :

    Mon XML :

    <barre>
    <![CDATA[<div>Un peu de HTML BlaBla</div>]]>
    </barre>
    <menu>
    <resultat>
    <site>
    <CodeSite>237</CodeSite>
    <NbItemSite>0</NbItemSite>
    </site>
    <site>
    <CodeSite>37</CodeSite>
    <NbItemSite>0</NbItemSite>
    </site>
    </resultat>
    </menu>
    Mon Jquery :


    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
    18
    19
    20
    21
    22
    23
    24
    25
     
    $.ajax({
    type: 'GET',
    url: 'ajax/MAJBarre.php',
    success: function (reponsexml) {	
    	var reponse = $(reponsexml).find('barre').text();
     
    	alert("Reponse : "+reponse);
     
    	if ($("#BarreMessageHidden").val() != 1)
    	{
    		$("#ConteneurBarre").html(reponse);
    		$("#ConteneurBarre").hide();
    		$("#ConteneurBarre").slideDown(750); 
    		$("#BarreMessageHidden").val('1');
    	}
    	else
    	{
    		$("#ConteneurBarre").html(reponse);
    	}
     
    	MAJCompteur($(reponsexml).find('menu').text());
     
    	}
    });
    Seulement le alert(reponse) retourne un résultat vide.

    Merci

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Je ne sais pas si le problème est là, mais un document XML ne peut avoir qu'un seul élément racine, alors que là tu en as deux : <barre> et <menu>.

    Pour que ce soit un vrai document XML, il te faudrait un truc genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <content>
      <barre>
        ...
      </barre>
      <menu>
        ...
      </menu>
    </content>
    (Je suis surpris que jQuery ne propose pas d'interpréter la réponse comme un fragment XML, mais bon.)
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre très actif
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2008
    Messages
    519
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2008
    Messages : 519
    Par défaut
    Effectivement ça fonctionne un peu mieux.

    J'étais tellement sur que le problème venait du Jquery que je n'ai pas pensé à regarder le XML.

    Cependant il reste encore des problèmes :

    Entre les balises <barre></barre> je dois récupérer du HTML qui sera directement inséré dans ma page avec $("#ConteneurBarre").html(reponse);, mais il me retire toutes les balises HTML et m'affiche uniquement du texte brute. J'ai essayé en ajoutant <![CDATA[ ]]>, mais le problème persiste.

    Puis, je dois interpreter le contenu de <menu></menu> avec une fonction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MAJCompteur($(reponsexml).find('menu').text());
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    MAJCompteur(xml)
    {
    alert(xml);
    }
    L'alerte me retourne les informations contenu dans <menu/> mais sans les balises xml (15258546511235), ce qui prose problème pour parser le résultat.

    Merci

  4. #4
    Membre très actif
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2008
    Messages
    519
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2008
    Messages : 519
    Par défaut
    J'ai trouvé : il ne fallait pas utiliser $(reponsexml).find('barre').text() mais $(reponsexml).find('barre').html()

    Par contre, lorsqu'il m'ajoute mon html, il m'affiche le ]]> alors que le <![CDATA[, lui, est bien enlevé.

    Merci

  5. #5
    Membre très actif
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2008
    Messages
    519
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2008
    Messages : 519
    Par défaut
    Salut,

    J'ai supprimé <![CDATA[ ]]> de mon XML et ça fonctionne correctement maintenant.

    ++

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

Discussions similaires

  1. Récupérer les données d'un xml externe
    Par ricozor dans le forum ASP
    Réponses: 4
    Dernier message: 23/01/2009, 20h08
  2. Récupérer donnée dans un fichier XML
    Par fred033 dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 22/04/2008, 16h04
  3. VBA - Lire & Récupérer données XML > Excel
    Par House MD dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 31/12/2007, 10h37
  4. Récupérer données d'un XML
    Par leridant dans le forum XML/XSL et SOAP
    Réponses: 8
    Dernier message: 02/07/2007, 09h38
  5. Récupérer des données dans un .XML
    Par Lootro dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 20/08/2006, 22h38

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