禁用浏览器后退按钮,但在我的 asp.net 应用程序中保持启用状态

disable browsers back button but keep it enable within my asp.net application

本文关键字:应用程序 net asp 状态 启用 我的 浏览器 按钮      更新时间:2023-09-26

我已经搜索并实现了一段代码,我可以在其中禁用浏览器的后退按钮。但是我遇到了一个问题,例如当我登录并且不执行任何操作并单击后退按钮时,它会将我带到登录页面,然后出现一个前进按钮。我不希望在登录后立即在主屏幕上启用后退按钮。但是后退按钮应该在我的应用程序中启用,但不完全是在我登录后启用。以下是我在母版页编码中使用的代码。请帮忙,因为我正在处理实时应用程序。

<script type="text/javascript">
        function disableBackButton() {
            window.history.forward(1);
            //alert("You cannot Nevigate To Back!!!");
        }
</script>
<body onload="disableBackButton()" >
</body>

在代码隐藏(服务器端)上写下这个:

protected void Page_Load(object sender, EventArgs e)
   {
     HttpContext.Current.Response.Cache.SetCacheability(HttpCacheability.NoCache);
     HttpContext.Current.Response.Cache.SetNoServerCaching();
     HttpContext.Current.Response.Cache.SetNoStore();

   }

在客户端写下这个:

<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>

很多路在这里