"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como lidar com eventos jQuery de maneira confiável nos UpdatePanels do ASP.NET?

Como lidar com eventos jQuery de maneira confiável nos UpdatePanels do ASP.NET?

Publicado em 2024-12-22
Navegar:584

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

Trate eventos em UpdatePanels com $(document).ready do jQuery

Ao trabalhar com elementos dentro de UpdatePanels usando jQuery, contando apenas com $( a ligação do evento document).ready pode ser insuficiente. Após atualizações parciais da página, esses manipuladores de eventos não funcionarão mais na área atualizada.

Abordagem recomendada

Para resolver isso, considere a seguinte abordagem:

Initial Binding with $(document).ready:
Ligue os manipuladores de eventos aos elementos relevantes durante o carregamento inicial da página usando $(document).ready.

Reinscrição no Page Request Manager:
Inscreva-se no evento endRequest do PageRequestManager da Microsoft. Este evento é acionado após atualizações parciais da página. Dentro do manipulador de eventos, vincule novamente os manipuladores de eventos jQuery aos elementos agora atualizados.

Este snippet demonstra a abordagem:

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

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

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

Abordagem Alternativa

Como alternativa, considere usar o método .on() do jQuery, que é mais eficiente do que assinar novamente. No entanto, avalie cuidadosamente essa abordagem para garantir que ela esteja alinhada com seus requisitos específicos. Consulte a documentação do jQuery para obter detalhes sobre .on():

  • https://api.jquery.com/on/
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3