$.ajax({
type: "post",
url: 你的url,
dataType: 'json',
success: function (d) {
layui.use(['tree', 'layer'], function () {
layui.tree({
elem: '#factoryTree',//绑定元素
nodes: convert(d),//完整结构参考官网api
............
//List<Tree>对象转换Nodes对象函数
function convert(rows) {//默认三级 List<Tree>集合,Tree为树形结构的实体类
function exists(rows, parentId) {
for (var i = 0; i < rows.length; i++) {
if (rows[i].id == parentId) return true;
}
return false;
}
var nodes = [];
// get the top level nodes
for (var i = 0; i < rows.length; i++) {
var row = rows[i];
if (!exists(rows, row.parentId)) {
nodes.push({
id: row.id,
name: row.text,
parent: null,
remark: row.remark
});
}
}
var toDo = [];
for (var i = 0; i < nodes.length; i++) {
toDo.push(nodes[i]);
}
while (toDo.length) {
var node = toDo.shift(); // the parent node
// get the children nodes
for (var i = 0; i < rows.length; i++) {
var row = rows[i];
if (row.parentId == node.id) {//这里修改自己需要的属性
var child = {id: row.id, name: row.text+(row.remark=='stop'?'<span style="color:darkgray">(停运)</span>':''), parentId: node.id, remark: row.remark,parentName: node.name};
if (node.children) {
node.children.push(child);
} else {
node.children = [child];
}
toDo.push(child);
}
}
}
return nodes;//layui nodes对象
}