加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

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

发布时间:2020-12-16 02:51:44 所属栏目:百科 来源:网络整理
导读:我有一个jstree.在页面加载时,jstree从服务器中填充,因为它对服务器进行了新的调用,但在那之后每当我刷新页面时,它总是从缓存中获取数据而不是调用服务器,因此总是采用旧的要填充的数据.我使用的是jstree 3.0.2版本.以下是在页面加载时生成jstree的代码. $('
我有一个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'
        }
    }
});

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读