javascript - jsTree onSelect 事件

标签 javascript jstree

我一直在尝试获取在 jsTree 中选择的节点的文本。我能够填充树并触发 onSelect 事件,但我无法找出单击了哪个节点。我在网上看到过使用 data.rslt.obj.attr("data") 的例子获取文本,但是这对我来说是未定义的。此外,当我尝试使用 .jstree('get_selected') 获取所选节点时我在对象的任何地方都找不到节点文本。如何获取节点文本?

这是我的 onSelect 回调函数:

function onSelect(event, data)
{
    // Get the name of the equipment that was selected.
    var selected_node = $("#equipment_tree").jstree('get_selected');
    var equipment_name = data.rslt.obj.attr("data");
}

最佳答案

2018 年更新。

感谢@ProfK 的评论,新版本的 jstree 中的 API 发生了变化。在 jstree v3.1.0(或更早版本)中,API 已更改为:

$("#treeContainer").on(
        "select_node.jstree", function(evt, data){
            //selected node object: data.node;
        }
);

对于 jstree 旧版本(2013 年之前)。

您可以通过以下方式获取选定的节点对象及其文本:
$("#treeContainer").bind(
        "select_node.jstree", function(evt, data){
            //selected node object: data.inst.get_json()[0];
            //selected node text: data.inst.get_json()[0].data
        }
);

关于javascript - jsTree onSelect 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10218818/

相关文章:

javascript - 如何使用 ruby​​ on Rails 设置 jstree

javascript - 如何只为超过 2 级的节点打开 jsTree 上下文菜单?

javascript - 两个对象数组正在合并,但它们没有排序 - D3

javascript - 颜色从蓝色跳到紫色

javascript - momentjs 格式返回日期休息一天?

javascript - 从 jsTree 搜索接收多条警报消息

javascript - 使用 jQuery 构造带参数的 URL

javascript - 将双引号添加到存储在变量中的字符串

javascript - 如何在一个应用程序中为 jsTree 使用不同的 "search_method"s?

javascript - 在检查事件中获取 jstree 中的所有选定节点?