ajouter dynamiquement auditeur à l'ajax le contenu créé dans jQuery
Je suis en train d'essayer d'obtenir le code html de la valeur d'un lien cliqué.
Les liens sont créés de manière dynamique avec Ajax donc je ne pense pas .bind ne
de travail et je n'ai pas la dernière version .vivre
$('div#message').click(function() {
var valueSelected = $(this).html(); //picks up the whole id. I juust want single href!
alert(valueSelected);
return false;
});
<div id="message">
<br/>
<a class="doYouMean" href="#">location A</a>
<br/>
<a class="doYouMean" href="#">location B</a>
<br/>
<a class="doYouMean" href="#">location C</a>
<br/>
<a class="doYouMean" href="#">location D</a>
<br/>
<a class="doYouMean" href="#">location E</a>
<br/>
</div>
OriginalL'auteur davidP | 2010-03-31
Vous devez vous connecter pour publier un commentaire.
Appliquer votre gestionnaire de juste les liens, dans le rappel de l'AJAX charge.
OriginalL'auteur tvanfosson
Voici une autre approche qui n'a pas été mentionné:
Si vous utilisez jQuery v1.7+ vous pouvez utiliser le
.sur()
méthode pour lier un écouteur d'événement pour HTML en cours ainsi que le code HTML qui est ajouté dans le futur:Si vous utilisez une ancienne version de jQuery, il est recommandé que vous utilisez le
.délégué()
plutôt la méthode:En résumé:
Votre méthode ne peut pas fonctionner avec un asychrone div créé... Juste en cas de div existent déjà
OriginalL'auteur Andrew
Vous avez 2 options -
OriginalL'auteur James Westgate
Vous devez vraiment être à l'aide de la dernière version, si vous pouvez l'aider.
Si c'est la ".doYouMean" les éléments qui sont ajoutés à l'aide d'AJAX, et le message est toujours là, à essayer:
(Cela fonctionne: http://www.jsfiddle.net/SuVzv/)
OriginalL'auteur Matt
Autre solution est de faire une fonction pour cliquez sur réinitialisation, parce que vous pouvez avoir d'autres situation, comme je l'ai eu :), et donc de la logique peuvent être les suivants:
sur ajax succès exécuter initsomething() 🙂
OriginalL'auteur Anton
Peut-être une fin et double réponse, mais Cela peut être une fin, mais c'est ce que je fais quand j'ai besoin d'ajax.
Et vous n'avez pas besoin de relancer les écouteurs d'événement ou écrire quoi que ce soit dans la fonction ajax.
OriginalL'auteur Flood Gravemind