La fonction cesse de fonctionner après le sorting de la table

J’ai actuellement une table qui est sortingée par DataTables avec une intégration bootstrap. Dans ma dernière colonne, j’ai un groupe de boutons (modifier, compléter, etc.) qui devrait appeler des fonctions lorsque vous cliquez dessus.

Les boutons sont créés à l’aide de ce code dans une boucle while PHP, data-id étant la variable que le javascript doit recevoir.

echo ""; 

Javascript:

 $(".complete").click(function() { var id = $(this).data("id"); alert(id); }) 

Cela fonctionne au chargement de la page, mais à la minute où je sortinge le tableau, les fonctions cessent de fonctionner sans sortie vers la console! Toute aide sur pourquoi cela ne fonctionne pas?

MODIFIER:

Fonction de sorting

 /* Datatables */ $("#tasks").dataTable({ "aoColumns": [ null, null, {"sType": "date-uk"}, {"bSortable": false} ] }); $.extend($.fn.dataTableExt.oSort, { "date-uk-pre": function (a) { var ukDatea = a.split("/"); return (ukDatea[2] + ukDatea[1] + ukDatea[0]) * 1; }, "date-uk-asc": function (a, b) { return ((a  b) ? 1 : 0)); }, "date-uk-desc": function (a, b) { return ((a  b) ? -1 : 0)); } }); /* End */ 

Les boutons doivent être recréés lors du sorting car les données ne sont pas chargées via ajax

Vous devez déléguer un événement au niveau de la table:

 $("#tasks").on("click",".complete",function() { var id = $(this).data("id"); alert(id); })