2013-09-16 124 views
1

jqtree docs,它说,你可以添加自定义属性数据:jqtree不显示自定义属性

您还可以在对象的其他数据。您可以稍后访问 这些数据。例如,要添加ID:

{ 
    label: 'node1', 
    id: 1 
} 

我送它JSON看起来像这样:

[ 
    { 
    "label": "foo", 
    "id": "12115", 
    "children": [ 
     { 
     "label": "bar", 
     "id": "15273", 
     "children": [] 
     }, 
     { 
     "label": "bin", 
     "id": "15288", 
     "children": [] 
     }, 
     { 
     "label": "baz", 
     "id": "33263", 
     "children": [] 
     } 
    ] 
    } 
] 

我采取这样的:

$(this).tree({ 
    dataUrl: 'http://my/server/url/', 
    autoOpen: true, 
    dragAndDrop: false 
}); 

的树显示正常,但它不会以我能确定的任何方式传递'id'字段。我做错了什么,或者是否不再支持该功能?

回答

3

Jqtree不会为html添加id属性。它在内部存储id属性。

您可以使用getNodeById函数来访问内部节点。

var node = $(this).tree('getNodeById', '15273'); 
console.log(node.name); 
console.log(node.id); 

如果你想id属性添加到HTML,您可以使用onCreateLi选项。另见this example

+0

感谢您的回复,这就是我想出来的结果,所以我会将您的答案标记为答案。 –