Jstree 状态插件不保存树状态

Posted

技术标签:

【中文标题】Jstree 状态插件不保存树状态【英文标题】:Jstree state plugin not saving tree state 【发布时间】:2014-02-23 04:49:16 【问题描述】:

在Jstree中添加状态插件在页面刷新之间或点击链接返回上一页后仍然没有保存树的状态

$('#myGrid').jstree(
    "types": 
       "key": 
           "icon": "Content/Images/skey.png"
       ,
       "value": 
           "icon": "Content/Images/sValue.png"
       
    ,
    "state":  "key": "myTree" ,
    "search":  ,
    "core": 
        "check_callback":true,
        "data": [@html.Raw(Model.JsonData)]
    ,
    "plugins": ["state", "types", "search"]

谢谢你,

【问题讨论】:

你整理好了吗?我也有同样的问题 【参考方案1】:

使用文档中的set state property...

【讨论】:

我试过var jsTree = $('#myGrid').jstree(true); jsTree.save_state();,但没有帮助【参考方案2】:

这在当前版本 3.08 上对我很有用。 虽然我使用 ajax 通过基于 id 的控制器(asp.net mvc 或 web api)获取 json 数据,而不是在加载时获取原始 html。如果可以的话,我会推荐这个,它更干净并且支持延迟加载。 在我的设置中,jstree 一个接一个地打开一个节点,直到它到达我打开的最后一个节点。

如果我打开多个节点分支,它就不会那么好。

重要的是您的节点具有唯一的 id 属性。还要检查 localStorage,看看是否有任何东西存储在那里。

【讨论】:

以上是关于Jstree 状态插件不保存树状态的主要内容,如果未能解决你的问题,请参考以下文章

jstree插件的使用(进阶)——动态json数据创建树

jsTree v 3+:如何在制作 jsTree 时使用 JSON 格式为“类型”插件传递 [类型] 信息?

JQuery/JS插件 jstree 设置节点的图标样式

jstree中想要选中子节点,父节点就会变成选中状态,需要如何修改。

jsTree插件简介

隐藏jsTree中的复选框