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 tous les id dans une fonction récursive


Sujet :

jQuery

  1. #1
    Membre averti Avatar de renaud26
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    1 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 1 365
    Points : 436
    Points
    436
    Par défaut Récupérer tous les id dans une fonction récursive
    Bonjour à Tous,

    Une fonction php m'affiche une arborescence de catégories, sous catégories, etc...
    Cet affichage se fait dans un div conteneur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <div id="liste_cats">
    recursive_cats();
    </div>
    J'y ai ajouté des images + ou + pour plier/déplier des catégories lorsqu'elles contiennent des sous cats.
    Chaque catégorie est affichée dans un div distinct qui sera show() ou hide() selon les cas.
    Je voudrais récupérer tous ces id d'un seul coup, j'ai fait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    	$('#liste_cats').children().each(function(){ 
    	var id = $(this).attr('id');
    	console.log(id);
     
    	$("#"+id).show();
    	$("#plier").html('<a style="text-decoration:underline" href="javascript:void(0)" onclick="plier_cats()">Plier Tout</a>');
     
    	});
    Le log me donne undefined pour les "sous div" preuve qu'ils ne sont pas récupérés par children - puisque ce sont des petits enfants.
    Sachant que je ne connais pas la profondeur de l'arbre, comment récupérer à coup sûr tout ce petit monde ?

    Merci de vos conseils.

  2. #2
    Membre expert
    Avatar de Golgotha
    Homme Profil pro
    Full-stack Web Developer
    Inscrit en
    Août 2007
    Messages
    1 386
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Full-stack Web Developer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2007
    Messages : 1 386
    Points : 3 531
    Points
    3 531
    Billets dans le blog
    1
    Par défaut
    Renaud26, tu as visiblement résolut ton problème.

    Une petite explication sur la solution que tu as trouvée serait le bienvenu

    Merci d'avance.
    Consultant et développeur full-stack spécialiste du Web
    faq jQuery - règles du forum - faqs web

  3. #3
    Membre averti Avatar de renaud26
    Homme Profil pro
    Webmaster
    Inscrit en
    Mars 2003
    Messages
    1 365
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Mars 2003
    Messages : 1 365
    Points : 436
    Points
    436
    Par défaut
    Absolument, tu as raison. J'avais un peu peur de passer pour une truffe en utilisant children() alors que j'avais plein de petits enfants. Du coup je me suis embarqué dans l'idée d'une usine à gaz récursive idem php...

    Puis j'ai trouvé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $('#liste_cats').find('div').each(function(){ 
    	var id = $(this).attr('id');
    		$("#"+id).show();
    		$("#plier").html('<a style="text-decoration:underline" href="javascript:void(0)" onclick="plier_cats()">Plier Tout</a>');
    	});
    Voili voilou !
    Bonne soirée.

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 30/11/2011, 22h31
  2. Récupérer les valeurs dans une fonction
    Par matmay dans le forum MATLAB
    Réponses: 3
    Dernier message: 04/05/2007, 16h50
  3. [RegEx] Récupérer tous les liens d'une page
    Par micatmidog dans le forum Langage
    Réponses: 13
    Dernier message: 03/11/2006, 01h37
  4. Réponses: 7
    Dernier message: 08/01/2005, 13h24
  5. Sélectionner tous les entiers dans une fourchette
    Par ludo.guy dans le forum Langage SQL
    Réponses: 5
    Dernier message: 16/07/2004, 09h15

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