使用 jQuery 的 $(document).ready 处理 UpdatePanel 中的事件
使用 jQuery 处理 UpdatePanel 中的元素时,仅依赖 $( document).ready 事件绑定可能还不够。部分页面更新后,这些事件处理程序将不再在更新区域内运行。
推荐方法
要解决此问题,请考虑以下方法:
初始绑定 $(document).ready:
在初始页面加载期间将事件处理程序绑定到相关元素$(document).ready.
重新订阅页面请求管理器:
订阅微软的PageRequestManager的endRequest事件。该事件在部分页面更新后触发。在事件处理程序中,将 jQuery 事件处理程序重新绑定到现在更新的元素。
此代码片段演示了该方法:
$(document).ready(function() { // Initial binding }); var prm = Sys.WebForms.PageRequestManager.getInstance(); prm.add_endRequest(function() { // Re-binding });
替代方法
或者,考虑使用 jQuery 的 .on() 方法,这比重新订阅更有效。但是,请仔细评估此方法,以确保它符合您的特定要求。有关 .on() 的详细信息,请参阅 jQuery 文档:
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3