Asp.Net禁用后退按钮

时间:2015-11-25 03:54:16

标签: javascript c# jquery asp.net

我从第1页到第2页有3页,第2页到第3页我发送了一些信息。我想做的是如果我在第二页我希望用户不要再回到第1页或第3位用户可以转到第1页或第2页。

是否有办法在浏览器上禁用后退按钮?还是有一种方法可以在用户按下后退按钮时显示错误?

有什么建议吗?

2 个答案:

答案 0 :(得分:0)

使用javascript尝试以下代码禁用浏览器后退按钮。

<script type="text/javascript" language="javascript">
function DisableBackButton() {
  window.history.forward()
}
DisableBackButton();
window.onload = DisableBackButton;
window.onpageshow = function(evt) { if (evt.persisted) DisableBackButton() }
window.onunload = function() { void (0) }
</script>

答案 1 :(得分:0)

这是我在Master Page内部的旧代码。自从我做了这个以来已经过了几年,如果你想更新它,你可以选择。

    Protected Overrides Sub OnPreRender(ByVal e As System.EventArgs)
       MyBase.OnPreRender(e)
       Dim disAbleBackButton As String
       disAbleBackButton = "<script language='javascript'>" & Environment.NewLine
       disAbleBackButton &= "function noBack(){window.history.forward()}" & Environment.NewLine
       disAbleBackButton &= "noBack();" & Environment.NewLine
       disAbleBackButton &= "window.onload=noBack;" & Environment.NewLine
       disAbleBackButton &= "window.onpageshow=function(evt){if(evt.persisted)noBack()}" & Environment.NewLine
       disAbleBackButton &= "window.onunload=function(){void(0)}" & Environment.NewLine
       disAbleBackButton &= "</script>"
       Page.ClientScript.RegisterClientScriptBlock(Me.Page.GetType(), "backhistory", disAbleBackButton)
  End Sub