Je ne parviens pas à lier les événements jQuery aux éléments de liste créés de manière dynamic.
C’est l’événement sur btnRemoveItem
qui ne se déclenche pas après begin ajouté par jQuery.
$('#btnAddStore').on('click', function(){ (...) $.ajax({ success: (function(result) { (...) var li = jQuery('', { 'id': object['id'] }).append('') .append('' + name_adr[0] + '') .append('' + name_adr[1] + ''); $(li).appendTo('#'+ country + ' ul'); } }); });
J’ai examiné des questions similaires ici, mais je n’ai trouvé aucune réponse qui puisse résoudre mon problème. Qu’est-ce qui me manque dans ce code?
Utilisez .on()
cette façon
$(document).on('click','#btnAddStore', function(){...});
essaye ça
$(document).on('click','#btnAddStore', function(){...});
$('#btnAddStore').on("scroll", ....)
lie l’événement de défilement aux seuls éléments présents lors de l’exécution de cette instruction, c’est-à-dire si un nouvel élément avec la classe wrapper1 est ajouté de manière dynamic Une fois cette instruction exécutée, le gestionnaire d’événements ne sera pas exécuté pour ces éléments.
$(document).on("scroll","#btnAddStore", ...)
, d’autre part, enregistrera un gestionnaire d’événements dans l’object document et utilisera event bubbling pour appeler le gestionnaire chaque fois que le défilement se produit dans un élément. avec la classe `wrapper“, il supportera donc l’ajout dynamic d’éléments.
Vois ici
Utiliser la délégation avec .on ():
$(document).on('click', '#btnAddStore', function(){...});