Bonsoir, je suis face à nouvel obstacle : comment écouter le clic sur un élément spécifique créé parmi n éléments créés dynamiquement.
Voici mon code:
Comment faire pour savoir quel bloc cont & i a été cliqué ? Dois-je créer 50 événements écoutés sur clic ? Possible avec une boucle?
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
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40 function retourAjax_25(data){ var tab=data; //Si pas d"erreur if (tab["Erreur"]===1){ //Compter nb éléments dans propriété Joueur du tableau de retour PHP var c = -1; for (var Joueur in tab) { if (tab.hasOwnProperty(Joueur)) ++c; } //Vider le div conteneur $(".espace_g2").empty(); //Pour chaque joueur trouvé, une div ContAtt + i, avec l'avatar, l'estimation de vie et pseudo for (var i = 1; i <= c; i++) { $(".espace_g2").append("<div class='conteneurAtt' id='ContAtt" + i + "' > </div>"); $("#ContAtt" + i).css({ 'margin-left' : '0px', 'margin-up' : '10px' // marge extérieure de 10px }); $("#ContAtt" + i).append( "<img src='" + tab[i]['AvatarJoueur'] + "'class='avatar' id='att" + i + "' height='60' width='60'>"); $("#ContAtt" + i).append( "<img src='" + tab[i]['imgEstiVieJoueur'] + "' class='vie' id=" + tab[i]['Joueur'] + " height='60' width='120'>"); $("#ContAtt" + i).append( "<div>" + tab[i]['PseudoJoueur'] + "</div>"); } } }
Besoin : connaitre quel bloc est cliqué me permettrait éventuellement d'avoir l'Id du joueur ciblé.
Je sens que le méconnu (de moi) $this peut aider, non?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 //S'il clique sur la barre de vie (classe vie avec comme identifiant l'ID du joueur ciblé) : $(".ContAtt1").on("click",".vie",function(){ alert ("Joueur cible=" + $(this).attr('id'); } $(".ContAtt2").on("click",".vie",function(){ alert ("Joueur cible=" + $(this).attr('id'); } /... $(".ContAtt50").on("click",".vie",function(){ alert ("Joueur cible=" + $(this).attr('id'); }
Sans me donner la solution, pourriez-vous me dire vers quoi orienter ma recherche?
J'ai cru voir une "ancienne" méthode bind?
Partager