我想使用Jstree来表示树结构。我面临的问题是服务器没有以符合jstree的格式返回数据 - 它只是普通的Json。
我实现的一个解决方案是使用json_data.ajax.success
回调来修改数据,以使其达到所需的格式。但是,此函数不会获取上下文信息 - 因此,我不知道正在加载哪个节点,并且不知道如何转换接收的数据。
我已经看到有一个types
插件允许节点之间的不同行为 - 例如,显示相应的图标。是否可以使用此插件为每个节点类型添加不同的ajax成功处理程序?如果没有,还有其他解决方案吗?
$("#tree").jstree({
"plugins": ["json_data", "themes", "types"],
"json_data": {
"ajax": {
"url": function (n) { // want to make this type-dependent.
if (n === -1) {
return "...";
} else if ( ... ) {
return "...";
}
},
"success": function (data) { // want to make this type-dependent
var result = [];
$.each(data, function (index, value) {
"data": "......",
"attr": {
"id": ".................",
"rel": "..............."
}
});
return result;
}
}
}
}
答案 0 :(得分:1)
您可以在服务器站点上为jsTree创建json数据,然后在服务器上再次处理它以添加jsTree的任何属性,然后您可以使用类型插件。