"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment gérer de manière fiable les événements jQuery dans les UpdatePanels ASP.NET ?

Comment gérer de manière fiable les événements jQuery dans les UpdatePanels ASP.NET ?

Publié le 2024-12-22
Parcourir:803

How to Reliably Handle jQuery Events Within ASP.NET UpdatePanels?

Gérer les événements dans UpdatePanels avec $(document) de jQuery.ready

Lorsque vous travaillez avec des éléments dans UpdatePanels à l'aide de jQuery, en vous appuyant uniquement sur $( La liaison d’événement document).ready peut être insuffisante. Lors de mises à jour partielles de page, ces gestionnaires d'événements ne fonctionneront plus dans la zone mise à jour.

Approche recommandée

Pour résoudre ce problème, envisagez l'approche suivante :

Liaison initiale avec $(document).ready :
Liez les gestionnaires d'événements aux éléments pertinents lors du chargement initial de la page à l'aide $(document).ready.

Réabonnement sur Page Request Manager :
Abonnez-vous à l'événement endRequest de PageRequestManager de Microsoft. Cet événement se déclenche après des mises à jour partielles de la page. Dans le gestionnaire d'événements, reliez les gestionnaires d'événements jQuery aux éléments maintenant mis à jour.

Cet extrait illustre l'approche :

$(document).ready(function() {
    // Initial binding
});

var prm = Sys.WebForms.PageRequestManager.getInstance();

prm.add_endRequest(function() {
    // Re-binding
});

Approche alternative

Vous pouvez également envisager d'utiliser la méthode .on() de jQuery, qui est plus efficace que le réabonnement. Cependant, évaluez soigneusement cette approche pour vous assurer qu’elle correspond à vos besoins spécifiques. Reportez-vous à la documentation jQuery pour plus de détails sur .on() :

  • https://api.jquery.com/on/
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3