2011-06-24 111 views
3

当我加载树我使用以下代码段加载:集节点属性在jstree

{"data":"admin","state":"closed","metadata":{"id":"\/admin\/","type":"default"} 

当我抓住一个参考一个特别选择节点使用:

jQuery.data(data.rslt.obj[0], "jstree").id; 

但是,当我添加一个新节点时,我不知道如何设置新节点的ID。我见过一些例子说使用以下内容:

var newnode = data.rslt.obj; 
newnode.attr("id", new_node_id); 

其中new_node_id是由我生成的,但这似乎不起作用。有人可以帮忙吗?

回答

1

我只使用所提供的方法从CRRM文档:

$("#treeContainer").jstree("create", parentNode, "position", {attr: {id: your_generated_id ...}, data: "nodeTitle"} ,null, true);

作品对我来说就像魅力。

+0

你怎么抢的parentNode参考? – jortiz81

+0

如果您通过'null'它是当前选定的节点,但我使用jQuery选择器或事件处理程序来引用父级。例如: '$('ul> li#'+ parentId)',或给每个节点一个特定的类,然后从给定的事件'.closest('。structureNode')'回溯。 – nicohvi

0

如果使用JSON数据来填充你的树,那么你应该在JSON字符串为它供给: see the docu