首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在非根节点中使用refresh_node时出现的Jstree问题

问在非根节点中使用refresh_node时出现的Jstree问题
EN

Stack Overflow用户
提问于 2019-07-29 17:59:23
回答 1查看 423关注 0票数 0

我正在使用jstree显示一些节点(包括。DnD、类型和上下文菜单插件)。我没有任何问题地获得了整个树,正确地显示了它,并且我可以选择任何节点,但是,在一个节点上使用更新操作(通过对服务器的Ajax调用)之后,我想刷新这个(并且只有这个)节点。refresh_node(myNode)操作是我想要的,Ajax调用工作正常,只给出了我需要的子树部分。

但是,当jstree尝试重画时,我得到一个关于不存在的变量的错误。我对它进行了调试,我注意到一些节点的父数组已经消失。

我使用备用JSON格式加载我的树,配置如下:

代码语言:javascript
复制
core{
    multiple: false,
    data {
        url: "my_url_string_to_server",
        data: function(node) { return { id: nodeId, /*other params*/ } }
    }
}
/*other plugins config*/

还有我给refresh_node打的电话:

代码语言:javascript
复制
//nodeId is a string with the name of the node I want to refresh.
var node = $.jstree.reference('.tree-data').get_node(nodeId);
$.jstree.reference('.tree-data').refresh_node(node);
//I tried refresh_node(nodeId) too, with the same error result.

我所有的树节点是:{ "id","UniqueId","parent":"Parent“},"text","Name”},"state":{ },"type":"type“"li_attr":{{ "title","title”},{ "class","class“}} "a_attr":{{ "class","class”} },"data":{{ "dbid","Id“},{ "dbparent","ParentId”},{ "status","statusId“}

如jstree文档(see 'alternative JSON format')中所述

作为ajax调用的结果返回它们的列表(required节点和所有子节点)(不管是对根节点还是对另一个非根节点的调用)

你能告诉我我哪里做错了吗?

提前谢谢你。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-07-31 19:27:32

我发现了问题:当你使用根id ("#")以外的id进行调用时,刷新处理节点id的子节点。我的方法是返回根节点和子节点,这是错误的。没有直接从DB更新单个节点的函数,但是this问题展示了如何从js更新它们,因此,我将尝试通过ajax调用获取新状态来更新它们,并使用该响应来更新所有数据并手动重绘。

希望这能对其他人有所帮助。

谢谢大家!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57251385

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档