【问题标题】:Webform message appeas when hitting the back button on browser点击浏览器上的后退按钮时出现 Webform 消息
【发布时间】:2017-06-28 06:33:35
【问题描述】:

当用户或密码输入错误时,我会显示一个与此类似的消息框:

ScriptManager.RegisterStartupScript(this, this.GetType(), "temp", "<script language='javascript'>alert('User or password typed wrong');</script>", false);

当我使用正确的用户名和密码登录并点击资源管理器上的后退按钮时,会出现上一页的相同错误弹出对话框窗口。

我该如何解决这个问题?

【问题讨论】:

    标签: c# asp.net webforms


    【解决方案1】:

    后退按钮将从本地浏览器缓存中加载之前呈现的页面。

    您可以在客户端使用 javascript 禁用后退按钮,也可以使用 C# 禁用浏览器缓存。

    使用javascript:

    function DisableBack() {
        window.history.forward()
    }
    DisableBack();
    window.onload = DisableBack;
    window.onpageshow = function(evt) { if (evt.persisted) DisableBack() }
    window.onunload = function() { void (0) }
    

    或在以下页面:

    this.history.forward(-1);
    

    使用 C#:

    Response.Cache.SetCacheability(HttpCacheability.NoCache);
    Response.Cache.SetExpires(DateTime.Now.AddSeconds(-1));
    Response.Cache.SetNoStore();
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-11-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-08
      • 2011-06-17
      • 1970-01-01
      相关资源
      最近更新 更多