jquery加载的文件仍在缓存中

时间:2018-01-30 13:50:23

标签: javascript jquery html

在我的网站的一部分中,我有最新信息,这些信息应该显示在任何页面上。

要做到这一点,我有一个名为" LM_overzicht.html"我加载并显示在这样的div中:

$(document).ready(function(){
    $("#LM2").load("LM_overzicht.html")

    });


<div id="LM2"></div>

但是当我改变&#39; LM_overzicht.html&#39;当我刷新页面时,更改不会显示,只有ctrl + F5才能完成。 所以我添加了一些我从stackoverflow获得的其他技巧

first this part in HTML:
<meta http-equiv='cache-control' content='no-cache'>
<meta http-equiv='expires' content='0'>
<meta http-equiv='pragma' content='no-cache'>

但是,它仍然不会在刷新后显示更改。 我还在JS中尝试了另一个技巧

<script>
$(document).ready(function(){
    $.ajaxSetup ({
        // Disable caching of AJAX responses
        cache: false
    });

    $("#LM2").load("LM_overzicht.html")

    });
</script>

但这并没有清除缓存。任何人都知道如何解决这个问题?

我的网站:Link to my site, where this 'last minute' part is at the bottom of the page

1 个答案:

答案 0 :(得分:2)

您可以在文件后面添加一个时间戳,以便它永远不会被缓存。

例如LM_overzicht.html?t=1

所以用JavaScript附加生成的时间戳。请注意,这样HTML文件永远不会被缓存,我不推荐。如果您仍想这样做,您可以随时添加日期而不是整个时间戳。

防止缓存的示例代码:

$("#LM2").load("LM_overzicht.html?t=" + Math.floor(Date.now() / 1000));