如何防止在asp.net登录后返回按钮

本文关键字:返回 按钮 登录 net 何防止 asp | 更新日期: 2023-09-27 18:12:51

我有两页home.aspxadmin.aspx

成功登录admin.aspx后,当我点击浏览器的后退按钮,它确实重定向到home.aspx,但我不想。

我正在检查home.aspx上的会话变量持久性,但由于某种原因它不起作用!!

下面是代码

home.aspx.cs

protected void Page_Load(object sender, EventArgs e)
{
    if (Session["aname"] != null)//should work as session will not be null!
    {
        Response.Redirect("admin.aspx");
    }
    } //.....some code..after this 

        if (dt.Rows.Count != 0)
        {
            Session["aname"] = TextBox11.Text;
            Response.Redirect("admin.aspx");
        }

admin.aspx.cs code

protected void Page_Load(object sender, EventArgs e)
{
    if (Session["aname"] == null)
    {
        Response.Redirect("home.aspx"); 
    }
} //some code after this..
protected void logoutbutton_Click(object sender, EventArgs e)
{
    Session["aname"] = null;
    Session.Abandon();
    Session.Clear();
    Response.Redirect("home.aspx");
}

注意:(things working fine)

1。登录成功

2。注销成功

3。退出后返回按钮被禁用(不在admin.aspx上)

问题:

登录时,即在admin上。Aspx,点击后退按钮,它重定向到主页。我不想要Aspx。我希望它保持在相同的admin.aspx

如何防止在asp.net登录后返回按钮

ok..最后尝试你所有的解决方案…这段代码工作在添加我的主页(在头部标签)

<script type = "text/javascript" >
function preventBack(){window.history.forward();}
setTimeout("preventBack()", 0);
window.onunload=function(){null};
</script>

本页详情

您可以将窗口历史向前推以防止后退按钮。在大多数情况下,这对我来说是有效的。将此JavaScript包含在您的Admin中。aspx页面。

$(function() {
    window.history.forward();
});