我正在实施基于网络的系统。如果按下浏览器的后退按钮,我需要捕获。如果按下后退按钮,它不会回发。我见过一些代码部分,但它没有解决我的问题。我有一个主页。如果点击浏览器的后退按钮,我想回发我的主页。
更清楚 - >主页 - > x.aspx?日期= 30.01.2012,我把日期放到会话中,然后是浏览器的后退按钮,主页????在那里,我想通过回发主页来从会话中获取日期。
window.history.go(-1)
答案 0 :(得分:2)
由于以下几个原因,这不是一个容易解决的问题:
我不会因为这些原因尝试这个,而是从不同的角度看问题(例如,这是一个设计问题吗?)
对于它的价值,我认为这可能达到一定程度,但对于它试图解决的任务而言将是一个过于复杂的解决方案,并且将来很难调试/维护。
答案 1 :(得分:0)
我猜你正试图避免用户返回并重新提交表单的情况。您可以使用POST/REDIRECT/GET(PRG)模式来避免检测后退按钮的使用。处理完表单提交后,请重定向到您想要访问的页面。
答案 2 :(得分:0)
您可以尝试使用ScriptManager
,EnableHistory
属性设置为true。
<asp:ScriptManager ID="ScriptManager1" runat="server"
EnableHistory="true" />
MSDN上的一篇文章描述了这一点:http://msdn.microsoft.com/en-us/library/ie/cc488548.aspx
答案 3 :(得分:0)
如果你想在其中一个页面上禁用后退按钮,请尝试使用以下javascript
function noBack(){window.history.forward(); }
&安培;在你的身体标签写下
&lt; BODY onload =“noBack();” onpageshow =“if(event.persisted)noBack();” onunload的= “” &GT;
这肯定会解决你的问题。
快乐编码!!