异步加载的内容未在文件更改时更新

时间:2015-01-05 20:08:56

标签: javascript jquery ajax virtual-machine

我有一个简单的容器,我使用jQuery .load()函数从简单的html视图文件中异步加载内容。

更改任何视图文件的内容后,浏览器中不会显示更改。

我认为内容在被隐藏并再次显示后在DOM中持久存在可能是一个问题,但即使在清除容器的html并从头开始加载之后,内容仍然没有更新。

我正在使用带有Debian 7的VMware虚拟机和文件夹共享,所以我认为这可能是共享文件夹同步的问题,但查看VM控制台内的html文件会显示其内容已正确更新。 / p>

没有涉及缓存,因此我不知道这里可能存在什么问题。

以下是一些代码示例:

js非常复杂,但这是直接负责点击加载文件的部分:

container.load(href + '.html',
    function(){
        self.open(id);
    });

内容从文件中加载,如:about.html

<p class="content">
    Lorem ipsum dolor sit amet, consectetur adipisicing elit. Aperiam, autem.
</p>

并且这是我的索引文件的一部分:

<div class="inner-wrapper" >
    <a href="about" class="box-anchor" data-id="about">
        <h2 class="box-title">About</h2>
    </a>
    <div class="content-wrapper" id="about"><!--content is being loaded here--></div>
</div>

1 个答案:

答案 0 :(得分:0)

所以我在charlietfl's suggestion之后添加了一个缓存搜索查询。它解决了这个问题。 这是更新后的代码:

container.load(href + '.html?' + (new Date).getTime(),
    function(){
    self.open(id);
});