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:
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>"); 
 
 
        }
 
    }
 
 
}
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?
Besoin : connaitre quel bloc est cliqué me permettrait éventuellement d'avoir l'Id du joueur ciblé.
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');
}
Je sens que le méconnu (de moi) $this peut aider, non?
Sans me donner la solution, pourriez-vous me dire vers quoi orienter ma recherche?
J'ai cru voir une "ancienne" méthode bind?