«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как надежно обрабатывать события jQuery в панелях обновлений ASP.NET?

Как надежно обрабатывать события jQuery в панелях обновлений ASP.NET?

Опубликовано 22 декабря 2024 г.
Просматривать:448

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

Обработка событий в UpdatePanels с помощью jQuery $(document).ready

При работе с элементами в UpdatePanels с использованием jQuery, полагаясь исключительно на $( Привязка события document).ready может оказаться недостаточной. При частичном обновлении страницы эти обработчики событий больше не будут работать в обновленной области.

Рекомендуемый подход

Чтобы решить эту проблему, рассмотрите следующий подход:

Первоначальная привязка с помощью $(document).ready:
Привяжите обработчики событий к соответствующим элементам во время начальная загрузка страницы с использованием $(document).ready.

Повторная подписка в диспетчере запросов страниц:
Подпишитесь на событие endRequest Microsoft PageRequestManager. Это событие возникает после частичного обновления страницы. В обработчике событий повторно привяжите обработчики событий jQuery к обновленным элементам.

Этот фрагмент демонстрирует подход:

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

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

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

Альтернативный подход

В качестве альтернативы рассмотрите возможность использования метода .on() jQuery, который более эффективен, чем повторная подписка. Однако тщательно оцените этот подход, чтобы убедиться, что он соответствует вашим конкретным требованиям. Подробную информацию о .on() см. в документации jQuery:

  • https://api.jquery.com/on/
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3