Bonjour !
Je suis en train de développer un site internet sous NodeJS et je bloque sur un problème tout bête...
J'aimerais récupérer l'ID d'un élément ("li") quand je clique sur un bouton/lien qui est dedans.
Cependant, la balise "li" et son contenue, est rajouté grâce à une fonction JavaScript :
// Ajoute la liste des taches dans la page
function insereList(bdd) {
for (var i = 0; i <= 5; i++) {
$('.contenue').append('<li id="'+bdd[i].id+'" >'+bdd[i].description+'</li>');
}
}
Ce qui a pour effet que quand j'utilise l'attribut attr() ou .on(click) ou n'importe quoi d'un élément qui à était rajouté avec la fonction, n'est pas détecté... Par exemple :
$( "li" ).on( "click", function() {
console.log("JE SUIS ICI !");
});
Quand je clique sur la balise "li", rien ne s'affiche dans la console... Contrairement à :
$( "ul" ).on( "click", function() {
console.log("JE SUIS ICI !");
});
Contrairement à la balise "ul" qui n'est pas généré avec une fonction et qui quand je clic dessus : affiche "Je suis ici" dans la console...
Je sais pas si j'ai était clair mais est-ce que quelqu'un aurait une solution s'il vous plait ? Est-ce que c'est normal ? Ou le problème viendrait d'un autre endroit dans mon code ? (Ce qui m'étonnerais un peu car le reste marche très bien mais on est sûr de rien)
Bonjour.
Si je comprends bien tu veux parler de déclencher un évènement sur un élément qui n'existe pas au moment ou le DOM à été chargé.
Si c'est bien ça et vu que tu utilises jQuery, je te recommande Tutoriel Vidéo jQuery » jQuery.on().
Pour faire simple, il te suffit de modifier par :
$("ul").on("click", "li", function() {
console.log("JE SUIS ICI !");
});