我有一个拥有母版页和多个普通页面的asp.net网站。主页面上有一个菜单栏,用户可以选择普通页面。我有一个普通页面的Page_Load事件中的代码。问题是,这个事件似乎只触发一次 - 用户第一次导航到页面。如果用户导航到另一个页面,然后再返回,则该事件不会触发。谁能告诉我我做错了什么?Page_Load事件只会触发一次
0
A
回答
0
看来,问题是由浏览器缓存引起的该页面,谢谢你指出我在正确的方向。
这个问题不仅在使用后退按钮时出现,所以我害怕防范这个问题并不能解决问题。
我的解决方案是用服务器端asp.net按钮控件替换我用于菜单的简单html超链接。当后面的代码执行response.redirect时,目标页面的page_load事件似乎每次都会执行。
+0
其实,我找到了一个更好的方法。简单地将以下内容添加到page_load事件可防止页面被缓存:Response.Cache.SetCacheability(HttpCacheability.NoCache); – 2012-04-18 18:39:50
1
如果用户用户Back
浏览器浏览器的按钮将使用缓存版本的页面,如果您的页面正常并且没有应用特定设置。这些代码会导致如果用户使用Back
按钮没有显示他/她:
或为prvent用户回去使用此代码:
<body onLoad="if(history.length>0)history.go(+1)">
相关问题
- 1. Backbone.View事件只会触发一次
- 2. Resize事件只会触发一次
- 3. jquery.change()事件只会触发一次
- 4. 角度事件只能触发一次触发一次
- 5. jQuery插件事件只触发一次
- 6. System.Threading.Timer只会触发一次
- 7. PreviewKeyDown只会触发一次
- 8. UIDeviceOrientationDidChangeNotification只会触发一次
- 9. .submit只会触发一次
- 10. Loop只会触发一次
- 11. ISupportIncrementalLoading只会触发一次
- 12. 只触发jQuery mousemove事件一次
- 13. JDialog WindowOpened事件只被触发一次
- 14. Xamarin AnimationEnd触发事件只有一次
- 15. jQuery Click事件只触发一次
- 16. jQuery .change()事件只触发一次
- 17. JavaFX按钮事件只触发一次
- 18. 使c#/ wpf事件只触发一次?
- 19. 只触发jQuery滚动事件一次
- 20. FilesystemWatcher只触发一次事件
- 21. Javascript onkeydown事件只触发一次?
- 22. Outlook 2016 VSTO文件夹添加事件只会触发一次
- 23. Flex事件才会触发一次
- 24. 图像上的jQuery单击事件只会触发一次
- 25. 事件只会引发一次?
- 26. jQuery如何让一个事件触发一次只触发一次div
- 27. LoadControl和Page_Load事件未触发
- 28. ASP.NET HttpHandler会触发Page_Load吗?
- 29. 只发一次事件?
- 30. 使用Response.Redirect时,Page_Load事件不会触发()
页面是否缓存在浏览器中?如果是这样,它不会再次从服务器加载,你的'page_load'不会被解雇。 – Oded 2012-04-15 19:35:59
根据您的IIS设置,页面被浏览器缓存并且不会返回到服务器的机会很大。 (尤其如果使用后退按钮导航到前一页)。当您将唯一的QueryString变量添加到URL的末尾时会发生什么? 'somepage.aspx - > somepage.aspx?2' – leepowers 2012-04-15 19:44:04