使用 jQuery 的 $(document).ready 处理 UpdatePanel 中的事件
使用 jQuery 处理 UpdatePanel 中的元素时,仅依赖 $( document).ready 事件绑定可能还不够。部分页面更新后,这些事件处理程序将不再在更新区域内运行。
推荐方法
要解决此问题,请考虑以下方法:
与 $(document).ready 的初始绑定:
绑定事件处理程序在初始页面加载期间使用 $(document).ready 到相关元素。
重新订阅页面请求管理器:
订阅 Microsoft 的 PageRequestManager 的 endRequest 事件。该事件在部分页面更新后触发。在事件处理程序中,将 jQuery 事件处理程序重新绑定到现在更新的元素。
此代码段演示了该方法:
$(document).ready(function() { // Initial binding }); var prm = Sys.WebForms.PageRequestManager.getInstance(); prm.add_endRequest(function() { // Re-binding });
替代方法
或者,考虑使用 jQuery 的 .on() 方法,这比重新订阅更有效。但是,请仔细评估此方法,以确保它符合您的特定要求。有关 .on() 的详细信息,请参阅 jQuery 文档:
以上是如何在 ASP.NET UpdatePanel 中可靠地处理 jQuery 事件?的详细内容。更多信息请关注PHP中文网其他相关文章!