0

如果我向用户提供页面,例如:

<!DOCTYPE HTML>
<HTML>
<HEAD>
    <SCRIPT type="text/javascript">
        function cbCountry_Click()
        {
            var select = document.getElementById("cbCountry");

            select.options[select.options.length] = new Option("Canada", "CA");
            select.options[select.options.length] = new Option("United States", "US");
        }​
    </SCRIPT>
</HEAD>
<BODY>
    <SELECT id="cbCountry"></SELECT>
    <P><BUTTON onclick="cbCountry_Click()">Get Countries</BUTTON>
    <P><A href="http://google.com">Visit a link</A>
</BODY>
</HTML>

此页面具有修改自身的能力。在这种情况下,它是独立的 javascript,但想象一下它是 AJAX 代码。

在此处输入图像描述

如果用户然后点击一个链接前进,然后点击返回这个页面;当页面被缓存时,它们将与页面一起呈现;而不是他们如何离开它:

在此处输入图像描述

有人解决了 AJAX 问题吗?


我注意到 Google 会定期将您页面的状态发送到服务器。如果您返回页面,他们会强制计时器刷新,这会从服务器刷新页面的状态。

我还注意到有些人只是强制页面不被缓存:

Cache-Control: nocache

防止页面被缓存。缺点是它会阻止页面被缓存。

4

1 回答 1

0

您可以使用 cookie 将状态存储在客户端,并在页面加载时从 cookie 中恢复页面状态。

于 2012-11-21T19:29:36.203 回答