You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
145 lines
4.9 KiB
145 lines
4.9 KiB
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<TITLE>维护学习目录结构</TITLE>
|
|
<meta charset="utf-8"/>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
|
<!--引入css和js-->
|
|
<script src="../lib/layui/layui.js"></script>
|
|
<script src="../lib/jquery-3.6.0.min.js"></script>
|
|
<script src="../lib/ztree/jquery.ztree.core-3.5.min.js"></script>
|
|
<script src="../lib/ztree/jquery.ztree.exedit-3.5.min.js"></script>
|
|
|
|
<link rel="stylesheet" href="../static/css/font.css">
|
|
<link rel="stylesheet" href="../static/css/weadmin.css">
|
|
<link rel="stylesheet" href="../lib/ztree/zTreeStyle.css">
|
|
<style>
|
|
.ztree li span.button.add {
|
|
margin-left: 2px;
|
|
margin-right: -1px;
|
|
background-position: -144px 0;
|
|
vertical-align: top;
|
|
}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<ul id="tree" class="ztree"></ul>
|
|
<script type="text/javascript">
|
|
layui.extend({
|
|
admin: '{/}../static/js/admin'
|
|
});
|
|
layui.use(['jquery', 'admin', 'layer'], function () {
|
|
let $ = layui.jquery,
|
|
admin = layui.admin,
|
|
layer = layui.layer;
|
|
|
|
let zTreeObj;
|
|
let setting = {
|
|
view: {
|
|
addHoverDom: addHoverDom, //当鼠标移动到节点上时,显示用户自定义控件
|
|
removeHoverDom: removeHoverDom, //离开节点时的操作
|
|
showIcon: true,
|
|
showLine: true
|
|
},
|
|
data: {
|
|
simpleData: {
|
|
enable: true
|
|
}
|
|
},
|
|
edit: {
|
|
enable: true,
|
|
editNameSelectAll: true,
|
|
showRemoveBtn: showBtn,
|
|
showRenameBtn: showBtn
|
|
},
|
|
callback: {
|
|
beforeEditName: beforeEditName,
|
|
beforeRemove: beforeRemove,
|
|
onRemove: onRemove,
|
|
beforeDrag: function () { //禁用拖拽
|
|
return false;
|
|
}
|
|
}
|
|
}
|
|
|
|
function showBtn(treeId, treeNode) {
|
|
if (treeNode.level == 0) {
|
|
return false;
|
|
} else {
|
|
return true;
|
|
}
|
|
}
|
|
|
|
function addHoverDom(treeId, treeNode) {
|
|
if (treeNode.level_id > 1) return;//第二级开始,不能显示增加
|
|
let sObj = $("#" + treeNode.tId + "_span");
|
|
if (treeNode.editNameFlag || $("#addBtn_" + treeNode.tId).length > 0) return;
|
|
let addStr = "<span class='button add ' id='addBtn_" + treeNode.tId
|
|
+ "' title='增加' onfocus='this.blur();'></span>";
|
|
sObj.after(addStr);
|
|
let btn = $("#addBtn_" + treeNode.tId);
|
|
if (btn)
|
|
btn.bind("click", function () {
|
|
WeAdminShow('增加', 'TreeAdd.html?parent_id=' + treeNode.id + "&level_id=" + treeNode.level_id, 550, 300);
|
|
})
|
|
}
|
|
|
|
function removeHoverDom(treeId, treeNode) {
|
|
$("#addBtn_" + treeNode.tId).unbind().remove();
|
|
}
|
|
|
|
function beforeRemove(treeId, treeNode) {
|
|
let b_del = false;
|
|
if (treeNode.childCount > 0) {
|
|
layer.msg('存在子节点,请先删除子节点!', {icon: 2, time: 2000, shade: 0.1});
|
|
} else {
|
|
layer.confirm('确定删除 ' + treeNode.name + ' 吗?', {icon: 0}, function () {
|
|
onRemove(treeNode.id);
|
|
})
|
|
}
|
|
return b_del;
|
|
}
|
|
|
|
function onRemove(id) {
|
|
$.ajax({
|
|
type: "POST",
|
|
async: false,
|
|
url: '/FengHuang/zjb/deleteNode',
|
|
data: {
|
|
id: id
|
|
},
|
|
dataType: "json",
|
|
success: function (data) {
|
|
if (data.success) {
|
|
layer.msg(data.message, {icon: 1, time: 2000, shade: 0.1});
|
|
loadTree();
|
|
} else {
|
|
layer.msg(data.message, {icon: 1, time: 2000, shade: 0.1});
|
|
return false;
|
|
}
|
|
}
|
|
})
|
|
}
|
|
// 编辑
|
|
function beforeEditName(treeId, treeNode) {
|
|
WeAdminShow('编辑', 'TreeUpdate.html?id=' + treeNode.id, 550, 300);
|
|
}
|
|
|
|
window.loadTree = function () {
|
|
let zNodes = [];
|
|
$.ajax({
|
|
type: "GET",
|
|
async: false,
|
|
url: '/FengHuang/zjb/getTreeData',
|
|
dataType: "json",
|
|
success: function (data) {
|
|
zNodes = data;
|
|
zTreeObj = $.fn.zTree.init($("#tree"), setting, zNodes);
|
|
}
|
|
})
|
|
}
|
|
loadTree();
|
|
})
|
|
</script>
|
|
</body>
|
|
</html> |