微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ajax -jstree 3.0.2动态树总是从缓存加载数据而不是对服务器进行新的调用

我有一个jstree.在页面加载时,jstree从服务器中填充,因为它对服务器进行了新的调用,但在那之后每当我刷新页面时,它总是从缓存中获取数据而不是调用服务器,因此总是采用旧的要填充的数据.我使用的是jstree 3.0.2版本.以下是在页面加载时生成jstree的代码.

$('#tree').jstree({
'core': {
data:{
'url':'getjstree'   // this is the url which will get the json data from the server
}
}});

我们如何解决这个问题以获得每次调用的新数据,我之前想到的一个解决方案是通过调用硬刷新的javascript代码

location.reload(true);

但这确实刷新了json数据,但进入了递归调用,从而挂起了页面.
请帮助我们如何解决这个问题.

解决方法

JSTree插件使用键“jstree”在浏览器的localStorage中保存树状态.所以在调用jstree之前,你应该从localStorage中删除该键,如下所示:

//Removes jstree cached state from localStorage
localStorage.removeItem('jstree');

$('#tree').jstree({
    'core': {
        data:{
            'url':'getjstree'
        }
    }
});

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐