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 :

Accordion liste dynamique ne s'ouvre pas au click


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2020
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2020
    Messages : 54
    Par défaut Accordion liste dynamique ne s'ouvre pas au click
    Bonjour à tous
    Je rencontre un soucis et je demande votre aide.

    J'ai un accordion bootstrap auquel j'ajoute dynamiquement du contenu.
    Une fois le contenu ajouté, le click qui devrait dérouler la liste ne marche pas. Je ne comprend pas d'ou vient le problème, je demande votre aide.

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    <li>
         <ul class="collapsible collapsible-accordion" id="menu">
    		<li>
    			<a class="collapsible-header waves-effect pl-2 arrow-r active"><strong>Item</strong><i class="fas fa-angle-down rotate-icon"></i></a>
    			<div class="collapsible-body">
    				<ul>
    					<li><a class="pl-4">Item1</a></li>
    					<li><a class="pl-4">Item2</a></li>
    					<li><a class="pl-4">Item3</a></li>
    				</ul>
    			</div>
    		</li>
    	</ul>
    </li>

    Code javascript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    function add_item(){			
    		$("#menu").append('<li>'
    			+'<a class="collapsible-header waves-effect pl-2 arrow-r">Autre<i class="fas fa-angle-down rotate-icon"></i></a>'
    			+'<div class="collapsible-body">'
    				+'<ul>'
    					+'<li><a class="pl-4">Item1</a></li>'
    					+'<li><a class="pl-4">Item2</a></li>'
    				+'</ul>'
    			+'</div>'
    		+'</li>');
    	};

    Merci d'avance.

  2. #2
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 520
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Maroc

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

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 520
    Par défaut
    Bonjour,

    Pour activer le click sur les éléments ajoutés dynamiquement, il faut passer par délégation :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $("#menu").on("click","li",function(){
       //le code ici...
    });
    Remarque : il est conseillé d'ajouter une class aux <li> aux lesquels tu veux attacher le click, vu qu'il y'a d'autres <li> à l'intérieur....

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2020
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2020
    Messages : 54
    Par défaut
    Merci pour la reponse Toufik83
    J'essai juste d'afficher le contenu de la liste. Ceci marche sur la première liste qui n'est pas généré dynamiquement mais pas sur les autres.

    Merci

  4. #4
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 520
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Maroc

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

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 520
    Par défaut
    Essaies ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    $('#menu').on('click','.arrow-r',function(){
      if($(this).next('.collapsible-body').is(':visible')){
      	$(this).next('.collapsible-body').slideUp(300,function(){
              $(this).prev('.arrow-r').find('i').removeClass('fa-angle-up').addClass('fa-angle-down');
            });
      }
      else {
           $(this).next('.collapsible-body').slideDown(300,function(){
             $(this).prev('.arrow-r').find('i').removeClass('fa-angle-down').addClass('fa-angle-up');
          });
      }
    });

  5. #5
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2020
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2020
    Messages : 54
    Par défaut
    Merci Toufik83, ça marche.

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

Discussions similaires

  1. Tableau croise dynamique qui ne s'ouvre pas dans access
    Par natounatou dans le forum Requêtes et SQL.
    Réponses: 0
    Dernier message: 29/05/2016, 17h20
  2. Pas d'affichage dans liste dynamique d'images
    Par samson_02 dans le forum Langage
    Réponses: 5
    Dernier message: 24/02/2012, 10h31
  3. [MySQL] Liste déroulante dynamique qui ne renvoie pas sur la bonne page
    Par Adaviada dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 23/11/2007, 20h27
  4. Question pas difficile sur la gestion des listes dynamiques
    Par mulbek dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 12/04/2006, 13h57
  5. [Javascript] Question pas difficile sur des listes dynamique...
    Par mulbek dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 12/04/2006, 09h55

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