Chrome浏览器即使在从服务器获取新内容后也会显示缓存内容

时间:2014-02-04 14:26:21

标签: javascript html google-chrome caching cache-control

html页面如下所示:

    Cache-Control:no-store
    Connection:keep-alive
    Content-Encoding:gzip
    Content-Type:text/html
    Date:Tue, 04 Feb 2014 14:51:46 GMT
    Server:nginx/1.4.4
    Transfer-Encoding:chunked


  <html>
    <head>
        <script type=javascript>

    funciton buttonClick(){
        var box = document.getElementById("box");
        box.val = "aaaaaaaaaaaaaaaaaaaa";
    }

    </script>
</head>
<body>

<textarea id="box">bbbbbbbbbbbbbbbbbbbbb</textarea>
<button onclick="buttonClick">button</button>
</body>

</html>

首先我点击按钮...#box.val ==“aaaaaaaaa”。然后我访问另一个页面,然后单击后退按钮。当它应该是“bbbbbbbbbbb”时,#box.val仍然是“aaaaaaaa”。

我可以看到浏览器向服务器请求了新的html。但是,浏览器显示“aaaaaaaaaaa”。

当我在浏览器中检查页面的来源时,它有“bbbbbbbbbbbbbb”,但它显示“aaaaaaaaaaaaaa”。

我的Chrome版本为32.0.1700.102

在FF或IE中不会发生这种情况。我能做些什么来防止这个问题。

1 个答案:

答案 0 :(得分:0)

您的HTML标记格式错误(标记名称前的空格)。我编辑了你的帖子,但也发现在下面的代码中纠正了其他javascript细节问题。

请尝试使用格式正确的HTML。让我们知道结果。

    <html>
        <head>
<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-STORE">
            <script type="text/javascript">

        funciton buttonClick(){
            var box = document.getElementById("box");
            box.val = "aaaaaaaaaaaaaaaaaaaa";
        }

        </script>
    </head>
    <body>

    <textarea id="box">bbbbbbbbbbbbbbbbbbbbb</textarea>
    <button onclick="buttonClick();">button</button>
    </body>

    </html>
相关问题