Par exemple, lors de la création d’un ajax pour lire la liste des messages, il y a un bouton réponse après chaque message, la classe est « répondre », si vous utilisez $(« .reply »).click(function(){ //do something... }), probablement le bouton répondre dans la liste chargée par ajax plus tard, l’événement clic sera invalide. En fait, la façon la plus simple est d’écrire onclick=" » directement dans le tag, mais écrire cela est en fait un peu bas, et le meilleur moyen est d’associer un événement de clic au nom de la classe. Il existe deux façons de résoudre le problème selon lequel les nœuds élémentaires ajoutés dynamiquement dans jquery ne peuvent pas déclencher d’événements, comme suit : Pour une meilleure présentation, supposons que vous ayez du code avec la structure suivante sous le corps d’une certaine page :
Méthode 1 : Utiliser en direct La fonction live() lie un ou plusieurs gestionnaires d’événements à l’élément sélectionné et spécifie quelles fonctions exécuter lorsque ces événements se produisent. La fonction live() s’applique à la correspondance des éléments actuels et futurs du sélecteur. Par exemple, des éléments créés dynamiquement via des scripts. La mise en œuvre est la suivante :
Méthode 2 : Utilisation sur Vous pouvez lier un événement à son parent ou à son corps via la méthode on, comme suit :
Maintenant vous pouvez essayer de voir si le problème a été résolu, j’espère que cet article pourra vraiment vous aider.
La deuxième que j’utilise est de lier l’élément au niveau parent...
|