如何在metadata
的页面加载时获取所有渲染的树jstree
,如下所示:
[23,24]
注意:我希望将id
对象中的每个metadata
放在页面加载[23,24]
上时都这样
$(function() {
$('#jstree').jstree({
"json_data": {
"data": [{
"data": "A node",
"metadata": { id: 23 },
"children": ["Child 1", "A Child 2"]
}, {
"metadata": { "id": 24 },
"data": "Node 2",
}]
},
"plugins": ["themes", "json_data", "ui"]
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="http://old.static.jstree.com/v.1.0pre/jquery.jstree.js"></script>
<div id="jstree">
</div>
答案 0 :(得分:1)
要检索id
值,可以在提供给jsTree实例的数组上使用map()
,如下所示:
$(function() {
var treeStructure = [{
"data": "A node",
"metadata": { id: 23 },
"children": ["Child 1", "A Child 2"]
}, {
"metadata": { "id": 24 },
"data": "Node 2",
}];
var ids = treeStructure.map(function(o) {
return o.metadata.id;
});
console.log(ids);
$('#jstree').jstree({
"json_data": {
"data": treeStructure
},
"plugins": ["themes", "json_data", "ui"]
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="http://old.static.jstree.com/v.1.0pre/jquery.jstree.js"></script>
<div id="jstree"></div>