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 :

Parser XML avec jQuery pour un attribut fixé


Sujet :

jQuery

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 26
    Points : 18
    Points
    18
    Par défaut Parser XML avec jQuery pour un attribut fixé
    Bonjour,

    J'ai un fichier XML nommé config.xml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?xml version='1.0' encoding='UTF-8'?>
    <langues>
       <libelle lg="fr">Texte en français</libelle>
       <libelle lg="en">Texte en anglais</libelle>
       <libelle lg="es">Texte en espagnol</libelle>
    </langues>
    et je cherche à récupérer directement le contenu pour l'anglais.

    J'ai essayé des dizaines de syntaxe mais qui n’ont pas abouti au résultat souhaité "Texte en anglais"
    En autre :
    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
    <script>
    $(window).ready(
       function()
          {
          $.ajax( {
          type: "GET",
          url: "config.xml",
          dataType: "xml",
          success: function(xml)
                {
                var texte = $(xml).find("libelle [lg='en']").text();
                }
             });
          }
    );
    </script>
    Cette tentative ne marche pas non plus.
    Est-ce possible sans utiliser la fonction each() ?

    Si vous avez une piste...
    Merci de votre aide
    Cordialement

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 664
    Points
    66 664
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var texte = $(xml).find("libelle [lg='en']:eq(0)").text();
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    var texte = $(xml).find("libelle [lg='en']").eq(0).text();

  3. #3
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    find("libelle [lg='en']")
    Avec cette syntaxe, tu cherches plutôt parmi les enfants de chaque balise "libelle" ceux dont l'attribut "lg" vaut "en", ce que tu souhaites serait plutôt
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    find("libelle[lg='en']")

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 26
    Points : 18
    Points
    18
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var texte = $(xml).find("libelle [lg='en']:eq(0)").text();
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    var texte = $(xml).find("libelle [lg='en']").eq(0).text();
    ...ça ne marche pas non plus .

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 26
    Points : 18
    Points
    18
    Par défaut
    Citation Envoyé par Bovino Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    find("libelle [lg='en']")
    Avec cette syntaxe, tu cherches plutôt parmi les enfants de chaque balise "libelle" ceux dont l'attribut "lg" vaut "en", ce que tu souhaites serait plutôt
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    find("libelle[lg='en']")
    ...ça ne marche pas non plus .
    Si ça marche ! C'est bien cette dernière solution.
    Je me suis seulement planté dans mon test local.
    Un grand merci.
    Bonne soirée.

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 664
    Points
    66 664
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .find("libelle[lg='en']").eq(0)
    ?

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 26
    Points : 18
    Points
    18
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .find("libelle[lg='en']").eq(0)
    ?
    Non, cela n'apporte rien de plus.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var texte = $(xml).find("libelle[lg='en']").text();
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var texte = $(xml).find("libelle[lg='en']").eq(0).text();
    renvoie le même résultat.
    Et puis si je ne trompe eq(0) demande le premier index.
    Mais l'index je ne le connais pas pour ma demande : l'ordre des langues pouvant être quelconque.
    Ce que je cherchais c'est justement de pouvoir paramétrer ma requête avec la langue souhaitée et d'obtenir directement la bonne chaîne.

    Merci à toi

  8. #8
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 664
    Points
    66 664
    Billets dans le blog
    1
    Par défaut
    ben le premier index de lg=fr ...

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

Discussions similaires

  1. [AJAX] parse xml avec jQuery pour IE7
    Par mra_ch dans le forum jQuery
    Réponses: 0
    Dernier message: 12/03/2013, 17h33
  2. [Drupal] Parser XML avec PHP pour générer du JS
    Par hitmax dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 17
    Dernier message: 15/06/2011, 15h27
  3. [XML] parser un fichier xml avec php pour refaire un xml.
    Par steve3000 dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 02/10/2008, 10h22
  4. parser xml avec linux
    Par nemya dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 06/04/2006, 10h49
  5. [XML] [EXPAT] Parser XML avec PHP
    Par glsn dans le forum Bibliothèques et frameworks
    Réponses: 8
    Dernier message: 20/12/2005, 12h29

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