登录  /  注册
ThinkPhp5.1 实现菜单的树状输出
汇英拓达杨凯瑞***
汇英拓达杨凯瑞*** 2019-04-29 15:02:07
[PHP讨论组]

首先在application下面的common中建立方法,这里以部门数据表department为例

数据库表结构如下:

360截图16550428537093.png

  1. 查找下面的子部门并树状输出,common中的代码为:

    function GetMenuID($pid){
       $list = \think\Db::table("department")
           ->where("pid",$pid)
           ->select();
       return $list;
    }

  2. 控制器中的代码为:
    $list = Db::table('bumen')->where('pid',0)->select();//查找父栏目
    $this->assign("list",$list);
    return $this->fetch();

  3. 视图中的代码为
    <select class="layui-select" name="dpid" id="dpid" required="required" lay-verify="dpid" autocomplete="off">
       {volist name="list" id="vo"}
           <option value="{$vo.id}">{$vo.dp_name}</option>
           {volist name="$vo['id']|GetMenuID=###" id="po"}
               <option value="{$po.id}">&nbsp;&nbsp;|——{$po.dp_name}</option>
               {volist name="$po['id']|GetMenuID=###" id="co"}
               <option value="{$po.id}">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|——{$co.dp_name}</option>
               {/volist}
           {/volist}
       {/volist}
    </select>

  4. 这里只写到三级,要是级数更多,依次类推,输出结果如下:

    360截图16751025260842.png

汇英拓达杨凯瑞***
汇英拓达杨凯瑞***

全部回复(0)
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号