|
|
|
<!DOCTYPE html>
|
|
|
|
<html>
|
|
|
|
|
|
|
|
<head>
|
|
|
|
<meta charset="UTF-8">
|
|
|
|
<title>树形表格</title>
|
|
|
|
<link rel="stylesheet" href="../../../component/layui/css/layui.css" />
|
|
|
|
<style>
|
|
|
|
thead {
|
|
|
|
background-color: #f2f2f2;
|
|
|
|
/* 设置背景色为灰色 */
|
|
|
|
}
|
|
|
|
</style>
|
|
|
|
</head>
|
|
|
|
|
|
|
|
<body>
|
|
|
|
|
|
|
|
<div class="layui-card" style="margin-bottom: 1px !important">
|
|
|
|
<div class="layui-card-body">
|
|
|
|
<table id="treeT"></table>
|
|
|
|
<script type="text/html" id="toolEvent">
|
|
|
|
<a class="layui-btn layui-btn-xs" lay-event="add">添加</a>
|
|
|
|
<a class="layui-btn layui-btn-warm layui-btn-xs" lay-event="update">编辑</a>
|
|
|
|
<a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="delete">删除</a>
|
|
|
|
</script>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
<script src="../../../component/layui/layui.js"></script>
|
|
|
|
<script>
|
|
|
|
layui.use(['treeTable', 'jquery'], function () {
|
|
|
|
var treeTable = layui.treeTable;
|
|
|
|
var $ = layui.jquery;
|
|
|
|
|
|
|
|
var _index = 0;
|
|
|
|
var layerIndex = 0;
|
|
|
|
|
|
|
|
treeTable.render({
|
|
|
|
elem: '#treeT',
|
|
|
|
id: "treeT",
|
|
|
|
tree: {
|
|
|
|
customName: { name: 'title' },
|
|
|
|
view: { showIcon: false }
|
|
|
|
},
|
|
|
|
url: '/dsBase/menu/selectAllForTreeTable',
|
|
|
|
height: 'full-30',
|
|
|
|
cols: [[
|
|
|
|
{ field: 'title', title: '菜单名称', width: "25%" },
|
|
|
|
{ field: 'href', title: 'Url地址', width: "25%" },
|
|
|
|
{ field: 'sort_id', title: '排序号', width: "5%", align: "center" },
|
|
|
|
{ field: 'memo', title: '描述', width: "30%" },
|
|
|
|
{ title: "操作", width: "15%", align: "center", templet: "#toolEvent" }
|
|
|
|
]],
|
|
|
|
done: function () {
|
|
|
|
treeTable.expandNode('treeT', {
|
|
|
|
index: 0,
|
|
|
|
expandFlag: true
|
|
|
|
});
|
|
|
|
}
|
|
|
|
});
|
|
|
|
|
|
|
|
treeTable.on('tool(treeT)', function (obj) {
|
|
|
|
_index = obj.data.LAY_DATA_INDEX;
|
|
|
|
var id = obj.data.id;
|
|
|
|
var level = obj.data.level;
|
|
|
|
var code = obj.data.code;
|
|
|
|
var is_leaf = obj.data.is_leaf;
|
|
|
|
console.log(obj, '======');
|
|
|
|
switch (obj.event) {
|
|
|
|
case 'add':
|
|
|
|
layerIndex = layer.open({
|
|
|
|
type: 2,
|
|
|
|
title: '添加',
|
|
|
|
shade: 0.1,
|
|
|
|
area: ['650px', '450px'],
|
|
|
|
content: './add.html?parent_id=' + id
|
|
|
|
});
|
|
|
|
break;
|
|
|
|
case 'update':
|
|
|
|
layer.open({
|
|
|
|
type: 2,
|
|
|
|
title: '编辑',
|
|
|
|
shade: 0.1,
|
|
|
|
area: ['650px', '530px'],
|
|
|
|
content: './update.html?id=' + id
|
|
|
|
});
|
|
|
|
break;
|
|
|
|
case 'delete':
|
|
|
|
var data = treeTable.getNodeById('treeT'); // 获取第一行的数据
|
|
|
|
console.log(data);
|
|
|
|
if (is_leaf != 0) {
|
|
|
|
layer.msg('存在子节点,不允许直接删除!', {
|
|
|
|
icon: 2,
|
|
|
|
time: 2000
|
|
|
|
});
|
|
|
|
} else {
|
|
|
|
layer.confirm('确定要删除该节点吗?', {
|
|
|
|
icon: 3,
|
|
|
|
title: '提示'
|
|
|
|
}, function (index) {
|
|
|
|
$.ajax({
|
|
|
|
url: '/dsBase/menu/DeleteMenu',
|
|
|
|
data: { "menu_id": id },
|
|
|
|
type: 'post',
|
|
|
|
success: function (result) {
|
|
|
|
if (result.success) {
|
|
|
|
layer.msg('删除成功!', {
|
|
|
|
icon: 1,
|
|
|
|
time: 1300
|
|
|
|
}, function () {
|
|
|
|
treeTable.reloadData('treeT');
|
|
|
|
});
|
|
|
|
} else {
|
|
|
|
layer.msg(result.message, {
|
|
|
|
icon: 2,
|
|
|
|
time: 2000
|
|
|
|
});
|
|
|
|
}
|
|
|
|
}
|
|
|
|
});
|
|
|
|
});
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
};
|
|
|
|
});
|
|
|
|
|
|
|
|
//给子页用的刷新树节点
|
|
|
|
window.refreshTreeNode = function () {
|
|
|
|
treeTable.reloadData('treeT');
|
|
|
|
}
|
|
|
|
|
|
|
|
window.changeLayerHeight = function (height) {
|
|
|
|
layer.style(layerIndex, {
|
|
|
|
height: height
|
|
|
|
});
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
});
|
|
|
|
</script>
|
|
|
|
</body>
|
|
|
|
|
|
|
|
</html>
|