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 :

bouclé sur du XML


Sujet :

JavaScript

  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Avril 2005
    Messages
    614
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Turquie

    Informations forums :
    Inscription : Avril 2005
    Messages : 614
    Points : 502
    Points
    502
    Par défaut bouclé sur du XML
    Bonjour,

    Je récupere du XML et j'aimerai pouvoir bouclé dedans et à chaque boucle j'aimerai créer un nouvel éléments dans mon bloc.

    mon code XML :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <photos>
        <photo>Photo1</photo>
        <photo>Photo2</photo>
        <photo>Photo3</photo>
    </photos>
    Ma fonction qui récupère le XML:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    function receivedHandlerPhoto(remote) {
    	var doc = remote.responseXML.documentElement;
    		if (doc) {
    		    $("photos").innerHTML = nodeValue(doc, "photo");
    		}
    	}
    Ma fonction nodeValue (qui récupere le contenu de la balise "photo")
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    function nodeValue(node, name) {
        var childs = node.getElementsByTagName(name);
        while (childs.length > 0 && childs.item(0).childNodes.length > 0)
        	return childs.item(0).childNodes.item(0).nodeValue + "<br />";
        return "";
    }
    Dans ce cas il ne me retourne que Photo1

    Moi j'aimerai qu'il boucle dans Photos et que pour chaque balise Photo trouvé il me créer une nouvelle balse html dans ma page dans un bloc par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <div id="photos"></div>
    J'en demande peut etre un peut trop mais c'est que je maitrise pas jaascript, ou alors si vous avez un tutos à me conseillez qui effectue cette opération, je suis preneur.

    Merci

  2. #2
    Membre expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Points : 3 239
    Points
    3 239
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    function nodeValue(node, name) {
        var childs = node.getElementsByTagName(name);
        var i=0;
        var text=""
        while (childs[i]) {
           // Prochaine noeud "PHOTO" : childs[i]
           var CChild = childs[i]
           // Effectue des actions avec ce noed "PHOTO"
           text+=CChild.innerXML+"<br />"
        }
        return text;
    }

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Avril 2005
    Messages
    614
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Turquie

    Informations forums :
    Inscription : Avril 2005
    Messages : 614
    Points : 502
    Points
    502
    Par défaut
    çà à l'aire d'être preque çà car là il m'affiche autant de Undefined qu'il y a de photo.

    Donc il doit manquer quelque chose non ?

  4. #4
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Avril 2005
    Messages
    614
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Turquie

    Informations forums :
    Inscription : Avril 2005
    Messages : 614
    Points : 502
    Points
    502
    Par défaut
    Bon finallement j'ai réussi avec cette méthode.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    function nodeValue(node, name) {
        var childs = node.getElementsByTagName(name);
        var text = "";
        var i=1;
        while (childs[i] && childs.length > 0 && childs.item(i).childNodes.length > 0){
        	text += childs.item(i).childNodes.item(0).nodeValue + "<br />";
        	i++;
        }
        return text;
    }
    Merci FremyCompany

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

Discussions similaires

  1. boucle sur liste d'éléments xml
    Par awalter1 dans le forum Général Python
    Réponses: 0
    Dernier message: 25/07/2011, 15h22
  2. [XSLT] Faire une boucle sur une variable [i]
    Par PoT_de_NuTeLLa dans le forum XSL/XSLT/XPATH
    Réponses: 8
    Dernier message: 07/06/2010, 12h45
  3. L'installation d'XP boucle sur elle-même
    Par pf106 dans le forum Windows XP
    Réponses: 13
    Dernier message: 20/08/2005, 14h55
  4. [SAX] NoSuchElementException sur parser XML
    Par iceman dans le forum Format d'échange (XML, JSON...)
    Réponses: 5
    Dernier message: 17/05/2004, 14h42
  5. [MFC] Boucle sur un bouton
    Par karl3i dans le forum MFC
    Réponses: 6
    Dernier message: 17/02/2004, 11h37

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