Événement sur une div rajoutée

Ce sujet est résolu
Default
,

Bonjour à tous, j'ai un petit problème avec un script qui utilise jQuery :

J'utilise de l'AJAX pour charger des données et parois elles j'ai une div qui, quand elle est cliquée permet de supprimer le contenu.

Le problème est que après avoir rajouté les données avec un .append(data), la div apparaît bien mais quand je clique dessus il ne se passe rien alors que ça marche bien avec une div qui était au début du chargement de la page. Voici la partie du script concernée :

$(".modify").click(function(){
   id = $(this).attr("id");
   div = $(this);
   $.post("action.php",{action :delete,id: id},function(){
         div.fadeOut();
      });
});

Voilà, j'espère ne pas avoir fais d'erreur dans le code car je le recopie de tête.

4 Réponse

Default
,

Bonsoir,

Remplace $(".modify").click(function(){

par $(".modify").live('click',function(){

En effet, en mettant à jour une partie de ta page avec ajax, les nouveaux éléments (dont ton .modify) ne sont plus "écoutés" par jquery. La fonction live() est là pour ça !

Default
,

Merci, ça marche super !

7578
,

Bon, je sais que ce n'est pas vraiment ce que tu attendais comme réponse, mais je te conseille de faire de l'ajax sans JQuery (classique), puisque moi même j'ai eu des problème en le faisant avec JQuey. Bref, je te propose ce tuto je pense qu'il pourra t'aider : Site du zéro | Ajax

Default
,

OK, je vais y penser, mais pas pour cette page car à part ça, tout fonctionne bien.