在浏览器的后退按钮上过期特定页面

时间:2010-07-27 11:42:02

标签: c# asp.net

如果用户按浏览器的后退按钮进入上一页,该页面应显示“网页已过期”等消息。

我可以使用javascript吗???

例如: 网站共有4页。在第1,2和3页上,用户可以使用后退按钮,在第4页上,用户可以获得所需的消息。

我认为我可以通过使用计数器来做到这一点。

我在母版页上使用了以下javascript ..

<script type="text/javascript">
    function GoBack() {
        window.history.go(+1);
    }
</script>

并像这样调用身体中的函数:

<body onload="GoBack();">

并于4日page_load执行以下操作:

Response.Cache.SetCacheability(HttpCacheability.NoCache);

它适用于所有页面..但我想只为第4页

这样做

2 个答案:

答案 0 :(得分:2)

如果您只想在该页面级别上使用它,并且当您使用回发时,我建议您只需将其保留在 ViewState 而不是会话状态。会话仍可在其他页面上使用,您可能希望在其他页面上使用其他计数器。

答案 1 :(得分:1)

您需要在请求之间保持变量生效。所以一种方法是将它放在某个viewstate或sessionstate中。 Sessionstate是最不受欢迎的。但是你可以把它放在页面的隐藏文本框中,然后简单地使用它。

在期待已久的更新/编辑之后查看问题,我建议您使用SessionState。请试一试。