jsTree创建节点后获取新节点

3

我正在尝试在用户编辑新节点的名称并按下Enter键后获取新创建节点的文本值。

当我这样做时:

        .on('create_node.jstree', function (e, data) {
            var id = data.node.id;
            alert($('#' + id).text());
        });

我的警报中只有“New Node”。我已经在这个网站上搜寻答案并查看了jstree网站的API文档,但是他们提供的例子很少,对于一个jQuery新手来说,理解起来非常困难。
所以,我的问题是我需要针对哪个事件进行编程才能获得刚刚创建的节点的ID?是changed.jstree事件吗?如果是,我该如何利用它? 编辑 可能有助于提到我是通过上下文菜单尝试这样做的;以下是我设置“创建”项目的方式:
                items = {
                    "create": {
                        "label": "New Category",
                        "action": function (obj) {
                            $node = tree.create_node(node);
                            tree.edit($node);
                        }
                    }
                }
1个回答

5

你可能正在寻找的事件是rename_node.jstree。它看起来像这样:

.on('rename_node.jstree', function (e, data) {
  //data.text is the new name:
  alert(data.text);
});

@takiMartillo 我明白了,抱歉。我马上回复你。 - Sam H.
@takiMartillo 我编辑了答案,希望现在能回答问题 :) - Sam H.
1
@takiMartillo,文档不太清楚,但实际上已经解释了数据参数中包含的内容。在重命名节点的说明https://www.jstree.com/api/#/?f=rename_node.jstree中,列出了三个东西:`node`、`text`和`old`。这意味着`rename_node`的回调将具有`data.node, data.textdata.old`。 - Sam H.
没问题,我觉得文档很混乱,只有通过阅读你在问题中的代码,才明白了你使用了 data.node.id - Sam H.
让我们在聊天中继续这个讨论 - taki Martillo
显示剩余5条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接