在一个节点(jstree)之后添加节点

时间:2017-05-12 13:28:56

标签: javascript jquery jstree

我正在使用jstree javascript库https://www.jstree.com/创建一个树。我需要在当前节点之后创建一个新节点作为兄弟。

  • Elem 1
  • Elem 2
  • Elem 3

我的观点是当我点击Elem 2时,一个新节点说在Elem 2和Elem 3之间添加了Elem 2.5

结果: -

  • Elem 1
  • Elem 2
  • Elem 2.5
  • Elem 3

我目前的代码: np.random.seed(123) N = 1000 df = pd.DataFrame(np.random.choice([0,1], size=(N, 3)), index=np.random.randint(1000, size=N)) df.index.name = 'user_id' df = df.add_prefix('q').reset_index() #print (df)

通过这个新的,节点总是在最后添加。有没有api或解决方法来处理这个?

1 个答案:

答案 0 :(得分:0)

您必须弄清当前文件夹中所选节点的当前索引,然后将索引传递给create_node方法而不是last。见下面的代码。查看演示 - Fiddle Demo

$('.appendTree')
        .jstree({   
        core : {
            check_callback : true,
            data : coredata
        }
    })
    .on("select_node.jstree", function (e, data) {
        var $parent = $('#'+data.node.id).parent();
                var index = $parent.children().index( $('#'+data.node.id) ) +1;

        if(data.node.parent === '#') {
            $parent = '#';
        }

        $(".appendTree").jstree('create_node', $parent, 'new node', index);
    });