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 :

[DOM] Child de meme génération


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 30
    Par défaut [DOM] Child de meme génération
    Bonjour,

    Je coince sur une petit problème et ni google, ni une recherche ici ne m'ont apporter de solutions.

    Je cherche a récupéré tout les enfants d'un parent donné mais uniquement les enfants d'une même génération

    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <ul id="first">
      <li id="li1.1"></li>
      <li id="li1.2"></li>
      <li id="li1.3"></li>
      <ul id="sub">
         <li id="li4"></li>
         <li id="li5"></li>
         <li id="li6"></li>
      </ul>
    </ul>
    Je voudrai récupérer seulement les li1.1, li1.2, li1.3 mais je trouve pas de maniere de faire.

    avec root = document.getElementById(first);
    root.getElementByTagName, et root.childNodes recupere plus que ce que je recherche.

    Au passage, je ne peux pas me baser sur les ID des enfants car ils sont variables. je recherche donc uniquement une solution a base de DOM ^^"
    Auriez vous une idée

    Merci

  2. #2
    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 : 55
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    root = document.getElementById('first').firstChild;
    var tableau = new Array;
    do{
    if(root.nodeName=='LI'){tableau.push(root)}
    root=root.nextSibling;
    }
    while(root.nextSibling)
    Devrait le faire je pense.
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 30
    Par défaut
    Merci, ca ressemble beaucoup a ce que je chercher a faire
    Me reste plus qu'a trouver la bonne maniere pour recuperer le contenu ^^

    Merci beaucoup

  4. #4
    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 : 55
    Localisation : France, Gironde (Aquitaine)

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

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    La variable tableau contient les éléments sélectionnés, si tu préfères récupérer leur id à la place, tu peux faire :
    Ensuite, en fonction de ce que tu veux en faire, tu peux boucler sur les valeurs du tableau :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for(var j in tableau){
        //traitement des données
    }
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 30
    Par défaut
    merci pour le coup de pouce mais en bon newbie, j'y arrive pas ^^

    en fait je récupérer bien tout les LI qu'il me faut mais impossible de récupérer le contenu d'un LI

    <li><a href="index.html">Hello World</a></li>

    root.childNodes[0] est pourtant bien un Object text mais root.childNodes[0].nodeValue ne me retourne que du vide

    deuxieme imcompréhension :
    root.childNodes[1] me retourne "index.html"... ca devrai pas me retourner un noeud de type Element ( la balise <A> en l'occurence) ?

    Merci d'un newbie

    Edit:

    Apres 2sec de reflexion je me suis rendu compte que mon hello world n'appartenait pas au noeud sur lequel j'etait mais a son fils...
    un root.childNodes[1].firstChild.nodeValue est venu au bout de mes probleme ^^

    Merci encore

  6. #6
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Par défaut
    aurais tu ton code complet ? ^^
    mais au vu de ce que tu nous montre tu n'es pas positionné sur le bon nœud

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

Discussions similaires

  1. [DOM] Génération de XML tout pas beau :(
    Par scorpiwolf dans le forum Bibliothèques et frameworks
    Réponses: 6
    Dernier message: 23/05/2006, 15h49
  2. [DOM] problème de génération d'un xml avec dom
    Par WalidNat dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 04/05/2006, 17h12
  3. [DOM] help sur Dom et suppression de Child
    Par grinder59 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 30/01/2006, 07h32
  4. [DOM] Génération dynamique fichier xml
    Par Fabouney dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 03/10/2005, 09h45
  5. [XML-DOM][XSD][JAVA] Génération de parseur
    Par charlot44 dans le forum Persistance des données
    Réponses: 2
    Dernier message: 22/06/2005, 12h36

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