我正在使用asp.net更新面板在选择菜单项时刷新页面上的内容。
在更新的内容中,是具有javascript反射功能的图像,该功能由以下代码行触发:
window.onload = function () { addReflections(); }
首次加载页面时运行正常,但选择菜单项并运行更新面板时运行不正常。
在使用jquery代码的先前项目中,我已将document.ready替换为函数pageLoad,但此页面上没有document.ready。
答案 0 :(得分:3)
基本上,这是因为更新面板刷新不会触发该事件。
有很多方法可以实现这种行为,Ajax.Net有一个可以挂钩的EndRequestHandler函数。
这是一个很好的例子:
答案 1 :(得分:3)
像这样:
<script>
// ASP.NET AJAX on update complete
var prm = Sys.WebForms.PageRequestManager.getInstance();
prm.add_endRequest(function(sender, args) {
// your code here, eg initToolTips('/Common/images/global/popup3.gif');
});
答案 2 :(得分:0)
看看这个事件:
加载整个页面时会触发 window.onload
。 UpdatePanel使用AJAX方法,因此无论何时更新并且往返结束,页面都会保持加载状态,并且只有部分内容已更新。
换句话说,“当对服务器的请求结束时,您需要这样做。”
答案 3 :(得分:0)
我认为你应该使用
function pageLoad(sender, arg) {
if (!arg.get_isPartialLoad()) {
// in first load only
}
//every time the update panel refreshed
}
问候