史上最简单的树结构 ztree

我实现的树结构使用的是Jquery中的Ztree技术。不同技术不同对待

首先看一下完整的html代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <link rel="stylesheet" href="../css/pintuer.css">
    <link rel="stylesheet" href="../css/admin.css">
    <script type="text/javascript" src="../js/jquery-3.3.1.min.js"></script>
    <script type="text/javascript" src="../ztree/js/jquery.ztree.core.min.js"></script>
    <link href="../ztree/css/zTreeStyle/zTreeStyle.css" rel="stylesheet" type="text/css">

</head>

<script type="text/javascript">

    var zTreeObj;

    var setting = {
        callback: {
            onClick: zTreeOnClick
        },
        data: {
            key: {
                name:"columnName"
            },
            simpleData: {
                //enable:true   采用简单数据模式 (Array)
                enable: true,
                idKey: "id",
                pIdKey: "parentId",
                rootPId: 0          //父id的值
            }
        }
    };
    //pId:父节点的id

    function zTreeOnClick(event, treeId, treeNode){
        var id=treeNode.id

    }

    $(document).ready(function(){
        $.post(
            "/api/getSysColumnAll",
            function(data){
                console.log(data)
                zTreeObj = $.fn.zTree.init($("#treeDemo"), setting, data);
                zTreeObj.expandAll(true);
            }
        )
    });

</script>
<body>
<div class="container"  >
    <div class="left" style="height:800px; ">
        <h5><span class="icon-pencil-square-o"></span>文章栏目</h5>
        <ul id="treeDemo" class="ztree" ></ul>
    </div>
</div>

</body>
</html>

讲解一下,首先写一个ul标签,id的值自定义

 <ul id="treeDemo" class="ztree" ></ul>

然后在script标签中写

//首先还要定义一个变量,与下面保持一致
var zTreeObj;

 $(document).ready(function(){
        $.post(
            "/api/getSysColumnAll",  	//接口请求路径
            function(data){
                console.log(data)
                zTreeObj = $.fn.zTree.init($("#treeDemo"), setting, data);
                zTreeObj.expandAll(true);
            }
        )
    });

注意 $.fn.zTree.init($("#treeDemo"), setting, data);
括号中的值应与上述我说的自定义的是保持一致
其次在script标签中写

 var setting = {
        callback: {
            onClick: zTreeOnClick
        },
        data: {
            key: {
                name:"columnName"		//实体类中的属性名
            },
            simpleData: {
                //enable:true   采用简单数据模式 (Array)
                enable: true,
                idKey: "id",		//二级id	
                pIdKey: "parentId",	//一级id(父id)
                rootPId: 0          //父id的值
            }
        }
    };

具体有的内容我已经在代码中讲解,请大家仔细观看代码。 大家还应当在head标签中引入如下jquery库 和 css样式

    <link rel="stylesheet" href="../css/pintuer.css">
    <link rel="stylesheet" href="../css/admin.css">
    <script type="text/javascript" src="../js/jquery-3.3.1.min.js"></script>
    <script type="text/javascript" src="../ztree/js/jquery.ztree.core.min.js"></script>
    <link href="../ztree/css/zTreeStyle/zTreeStyle.css" rel="stylesheet" type="text/css">

这几个文件没办法放在博客中,大家可以加群进行索取。

下面说一下后端的代码,其实后端的代码更加简单,就是一个查询所有的功能返回给前端即可,前端会自动进行树结构的展示。
在这里插入图片描述
直接一个selectAll即可,这里我用的是通用mapper,也没有写sql语句。
这是表中的数据,数据我没有截取全部

在这里插入图片描述
这是前端的树结构展示。
在这里插入图片描述
这辈子坚持与不坚持都不可怕,怕的是独自走在坚持的道路上!
欢迎加入技术群聊!

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值