点击浏览器

时间:2017-06-28 06:33:35

标签: c# asp.net webforms

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

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

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

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

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

您可以在客户端使用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();