2009-05-19 4 views
0

modifié ma première questionDéfinissez un autre identifiant pour chaque nouvel élément dans le rappel de l'événement de chargement

Le problème est le même pour régler l'identifiant hors un élément nouvellement ajouté ou si j'utilise le NoteID argument de la fonction. Le résultat est que chaque élément obtient le même identifiant si cette fonction est mise en boucle.

Comment puis-je définir un ID différent pour chaque élément nouvellement ajouté? Comme c'est le cas actuellement, la valeur de l'événement submit est la même pour tous les éléments. Si je dois boucler cette fonction pour créer plusieurs notes basées sur le seul de l'entrée de la base de données, le dernier noteid ajouté est mémorisé et chaque élément utilise le même ID.

Vous pouvez voir ce qui se passe si vous voyez the page D'abord, vous devez créer comme deux notes en cliquant sur l'icône avec la flèche Ensuite, supprimez celui du haut suivi d'une actualisation de la page. Vous verrez que le second est supprimé.

newnote(tbnoteid){ 

    $('.wrappertbnote:last').load('tbnote.html .paneltbnote', function() { 
     var t = this; 
     var tt= $(t).children(1).children("form").children("#frmnoteid"); 
     $(tt).attr('id' , tbnoteid); 

     $(".frmremovetbnote:last").submit(function(){ 
      var idvalue = $(tt).attr('id'); 

      $.post("tbnotesact.php",{ 
      noteid: tbnoteid, 
      action: "remove", 
      time: timestamp 
      }, function(xml) { 

merci, Richard

+0

Pouvez-vous nous montrer le code de la fonction responsable de l'ajout de nouveaux éléments, alors? – duckyflip

+0

oui je peux, mais c'est le même que d'en haut mais avec plus de choses dedans. Déboguer les alertes, etc –

Répondre

1

Vous devez vous rappeler que cette fonction se boucle d'une autre fonction! Vous pouvez voir que ma page

J'ai aussi trouvé this comment sur la même question, je crois , mais je ne comprends pas la solution

Je dois vérifier que sur

Je ne savais pas comment pour le tester

J'ai résolu le problème en supprimant la méthode de charge et la liaison de l'événement Peut-être soumettre cela devenait trop compliqué pour jquery pour gérer

Au lieu de chargement, j'utilise la méthode prepend et j'utilise un événement click normal avec live

Il est également beaucoup plus facile d'ajouter des variables. C'est presque le même que l'écho de php

+0

Ignorer ma suggestion précédente, le "self = this" ne vous aidera pas dans ce cas. Il y a trop de choses qui se passent ici. Le chargement et le remplacement du html en plus de la soumission, etc. Cela doit être simplifié ou il sera très difficile de vous fournir une réponse. –

+0

Je vais supprimer la liaison de l'événement de soumission et utiliser un bouton normal. De cette façon, le live supporte le clickevent –

Questions connexes