gpt4 book ai didi

javascript - 如何从本地存储重新加载 jstree?

转载 作者:行者123 更新时间:2023-12-03 11:12:01 24 4
gpt4 key购买 nike

我正在使用 jstree 访问 xml。我需要将树中创建的节点等保存到本地存储。所以,我现在正在做的是,当创建节点时,我使用“get_json”将树的实例转换为 json 形式,然后使用“JSON.stringify”将其转换为 json 字符串。我将此 json 字符串作为“SavedTree”保存到本地存储。

  .bind('create_node.jstree', function(e, data){
var jsonForm =$('#treeContainer').jstree('get_json', -1);
localStorage.setItem('SavedTree', JSON.stringify(jsonForm));
})
};

当我从 localStorage 检索“SavedTree”时,我解析它以将字符串转换回 json:

var NewTree = localStorage.getItem('SavedTree');
var NewTree = JSON.parse(NewTree);

'NewTree'是Json形式。如何将其转换回树的实例,以便我可以在下面的代码中将其用作“数据”?

  ("#treeContainer").jstree({
"json_data" : {
"data": data
"progressive_render":"true"
},
"plugins": [ "json_data", "contextmenu", "crrm", "dnd", "unique"],
})

我是 javascript 新手,所以这可能是一个愚蠢的问题,但任何有关如何继续的建议将不胜感激。谢谢。

最佳答案

这行很奇怪:

var NewTree = localStorage.getItem('SavedTree', JSON.parse(SavedTree));

getItem 没有第二个参数。

我想你想要:

var NewTree = JSON.parse(localStorage.getItem('SavedTree'));

关于javascript - 如何从本地存储重新加载 jstree?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27537825/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com