无法在asp.net中禁用浏览器后退按钮

时间:2014-06-04 11:27:09

标签: javascript jquery asp.net

我在我的应用程序的注销方案中面临问题。用户登录网站后,他/她使用它(网站),完成后,他们会进行注销,导致他们返回登录页面。但现在问题是,从这个登录页面,如果我点击浏览器后退按钮,那么它再次将用户带回上一个访问过的页面,就像登录一样。如何退出后,如何阻止用户查看上一页? / p>

我试过

Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.Cache.SetExpires(DateTime.UtcNow.AddHours(-1));
Response.Cache.SetNoStore();

 <META Http-Equiv="Cache-Control" Content="no-cache"/>
 <META Http-Equiv="Pragma" Content="no-cache"/>
 <META Http-Equiv="Expires" Content="0"/>

2 个答案:

答案 0 :(得分:0)

当您点击退出时,您应该在退出时点击以下代码

HttpContext.Current.Response.Cache.SetCacheability(HttpCacheability.NoCache);
HttpContext.Current.Response.Cache.SetNoServerCaching();
HttpContext.Current.Response.Cache.SetNoStore();
Session.Abandon();

现在在head标签的登录屏幕上,输入以下JavaScript代码

<script type="text/javascript" language="javascript">
window.history.forward(1);
document.attachEvent("onkeydown", my_onkeydown_handler);
function my_onkeydown_handler()
{
switch (event.keyCode)
{
case 116 : // F5;
event.returnValue = false;
event.keyCode = 0;
window.status = "We have disabled F5";
break;
}
}
</script>

希望有所帮助

答案 1 :(得分:0)

你真的不能这样做。最好的方法是将用户定向到另一个页面,然后在注销时关闭它。类似的东西:

<SCRIPT LANGUAGE="JavaScript">

       function goNewWin() {

     //***Get what is below onto one line***

     window.open("backbuttonnewpage.html",'TheNewpop','toolbar=1,
     location=1,directories=1,status=1,menubar=1,
       scrollbars=1,resizable=1'); 

      //***Get what is above onto one line*** 

     self.close()

       }

        </SCRIPT> 

     <A HREF="javascript:goNewWin()">Click to go to a new page</A>