js实现layui三层树形结构,点击每一层的节点显示不同的表格内容的代码
时间: 2024-02-21 09:58:59 浏览: 107
以下是一个简单的示例代码,实现了一个三层树形结构的layui组件,点击每一层节点都会显示不同的表格内容。
HTML代码:
```html
<div class="layui-tree" lay-filter="tree"></div>
<div class="layui-table" id="table1">
<table></table>
</div>
<div class="layui-table" id="table2">
<table></table>
</div>
<div class="layui-table" id="table3">
<table></table>
</div>
```
JS代码:
```javascript
layui.use(['tree', 'table'], function(){
var tree = layui.tree;
var table = layui.table;
// 渲染树形结构
tree.render({
elem: '.layui-tree',
data: [{
title: '一级节点1',
id: 1,
children: [{
title: '二级节点1-1',
id: 11,
children: [{
title: '三级节点1-1-1',
id: 111
},{
title: '三级节点1-1-2',
id: 112
}]
},{
title: '二级节点1-2',
id: 12,
children: [{
title: '三级节点1-2-1',
id: 121
},{
title: '三级节点1-2-2',
id: 122
}]
}]
},{
title: '一级节点2',
id: 2,
children: [{
title: '二级节点2-1',
id: 21,
children: [{
title: '三级节点2-1-1',
id: 211
},{
title: '三级节点2-1-2',
id: 212
}]
},{
title: '二级节点2-2',
id: 22,
children: [{
title: '三级节点2-2-1',
id: 221
},{
title: '三级节点2-2-2',
id: 222
}]
}]
}],
click: function(obj){
// 点击树节点时,根据节点id显示不同的表格内容
var id = obj.data.id;
if(id == 111){
table.render({
elem: '#table1 table',
data: [{
name: '张三',
age: 18,
sex: '男'
},{
name: '李四',
age: 20,
sex: '女'
}],
cols: [[
{field: 'name', title: '姓名'},
{field: 'age', title: '年龄'},
{field: 'sex', title: '性别'}
]]
});
}else if(id == 112){
table.render({
elem: '#table1 table',
data: [{
name: '王五',
age: 22,
sex: '男'
},{
name: '赵六',
age: 24,
sex: '女'
}],
cols: [[
{field: 'name', title: '姓名'},
{field: 'age', title: '年龄'},
{field: 'sex', title: '性别'}
]]
});
}else if(id == 121){
table.render({
elem: '#table2 table',
data: [{
name: '张三',
age: 18,
sex: '男'
},{
name: '李四',
age: 20,
sex: '女'
}],
cols: [[
{field: 'name', title: '姓名'},
{field: 'age', title: '年龄'},
{field: 'sex', title: '性别'}
]]
});
}else if(id == 122){
table.render({
elem: '#table2 table',
data: [{
name: '王五',
age: 22,
sex: '男'
},{
name: '赵六',
age: 24,
sex: '女'
}],
cols: [[
{field: 'name', title: '姓名'},
{field: 'age', title: '年龄'},
{field: 'sex', title: '性别'}
]]
});
}else if(id == 211){
table.render({
elem: '#table3 table',
data: [{
name: '张三',
age: 18,
sex: '男'
},{
name: '李四',
age: 20,
sex: '女'
}],
cols: [[
{field: 'name', title: '姓名'},
{field: 'age', title: '年龄'},
{field: 'sex', title: '性别'}
]]
});
}else if(id == 222){
table.render({
elem: '#table3 table',
data: [{
name: '王五',
age: 22,
sex: '男'
},{
name: '赵六',
age: 24,
sex: '女'
}],
cols: [[
{field: 'name', title: '姓名'},
{field: 'age', title: '年龄'},
{field: 'sex', title: '性别'}
]]
});
}
}
});
});
```
注意:以上代码仅为示例,实际应用中需要根据具体需求进行修改和完善。
阅读全文