Layui+dtree实现左边分类列表,右边数据列表

这篇具有很好参考价值的文章主要介绍了Layui+dtree实现左边分类列表,右边数据列表。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

效果如下

Layui+dtree实现左边分类列表,右边数据列表文章来源地址https://www.toymoban.com/news/detail-438616.html

代码实现

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>帖子类别</title>
    <meta name="renderer" content="webkit">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <link rel="stylesheet" href="${request.contextPath}/static/lib/layui-v2.6.3/css/layui.css" media="all">
    <link rel="stylesheet" href="${request.contextPath}/static/css/public.css" media="all">
    <link rel="stylesheet" href="${request.contextPath}/static/lib/layui_ext/dtree/dtree.css">
    <link rel="stylesheet" href="${request.contextPath}/static/lib/layui_ext/dtree/font/dtreefont.css">
</head>
<body>
<div class="layui-fluid">
    <div class="layui-row layui-col-space15">
        <!-- 左树 -->
        <div class="layui-col-sm12 layui-col-md4 layui-col-lg2">
            <div class="layui-card">
                <div class="layui-card-body mini-bar" id="ltTree">

                </div>
            </div>
        </div>
        <!-- 右表 -->
        <div class="layui-col-sm12 layui-col-md8 layui-col-lg10">
            <div class="layuimini-container">
                <div class="layuimini-main">
                    <fieldset class="table-search-fieldset">
                        <legend>搜索信息</legend>
                        <div style="margin: 10px 10px 10px 10px">
                            <form class="layui-form layui-form-pane" action="">
                                <div class="layui-form-item">
                                    <div class="layui-inline">
                                        <label class="layui-form-label">姓名</label>
                                        <div class="layui-input-inline">
                                            <input type="text" name="keyword" autocomplete="off" class="layui-input">
                                        </div>
                                    </div>
                                    <div class="layui-inline">
                                        <label class="layui-form-label">性别</label>
                                        <div class="layui-input-inline">
                                            <select name="gender"  lay-filter="aihao">
                                                <option value="" selected=""></option>
                                                <option value="0">男</option>
                                                <option value="1">女</option>
                                            </select>
                                        </div>
                                    </div>
                                    <div class="layui-inline">
                                        <label class="layui-form-label">是否驱虫</label>
                                        <div class="layui-input-inline">
                                            <select name="expellingParasite"  lay-filter="aihao">
                                                <option value="" selected=""></option>
                                                <option value="0">是</option>
                                                <option value="1">否</option>
                                            </select>
                                        </div>
                                    </div>
                                    <div class="layui-inline">
                                        <label class="layui-form-label">是否绝育</label>
                                        <div class="layui-input-inline">
                                            <select name="sterilization"  lay-filter="aihao">
                                                <option value="" selected=""></option>
                                                <option value="0">是</option>
                                                <option value="1">否</option>
                                            </select>
                                        </div>
                                    </div>
                                    <div class="layui-inline">
                                        <label class="layui-form-label">是否接种疫苗</label>
                                        <div class="layui-input-inline">
                                            <select name="vaccination"  lay-filter="aihao">
                                                <option value="" selected=""></option>
                                                <option value="0">是</option>
                                                <option value="1">否</option>
                                            </select>
                                        </div>
                                    </div>
                                    <div class="layui-inline">
                                        <label class="layui-form-label">数据来源</label>
                                        <div class="layui-input-inline">
                                            <select name="source"  lay-filter="aihao">
                                                <option value="" selected=""></option>
                                                <option value="0">系统录入</option>
                                                <option value="1">用户发布</option>
                                            </select>
                                        </div>
                                    </div>
                                    <div class="layui-inline">
                                        <label class="layui-form-label">审核状态</label>
                                        <div class="layui-input-inline">
                                            <select name="status"  lay-filter="aihao">
                                                <option value="" selected=""></option>
                                                <option value="0">未审核</option>
                                                <option value="1">已审核</option>
                                            </select>
                                        </div>
                                    </div>
                                    <div class="layui-inline">
                                        <button type="submit" class="layui-btn layui-btn-primary"  lay-submit lay-filter="data-search-btn"><i class="layui-icon"></i> 搜 索</button>
                                    </div>
                                </div>
                            </form>
                        </div>
                    </fieldset>
                    <script type="text/html" id="toolbarDemo">
                        <div class="layui-btn-container">
                            <button class="layui-btn layui-btn-normal layui-btn-sm data-add-btn" lay-event="add"> 添加 </button>
                        </div>
                    </script>
                    <table class="layui-hide" id="currentTableId" lay-filter="currentTableFilter"></table>
                    <script type="text/html" id="currentTableBar">
                        <a class="layui-btn layui-btn-normal layui-btn-xs data-count-edit" lay-event="edit">编辑</a>
                        <a class="layui-btn layui-btn-xs layui-btn-danger data-count-delete" lay-event="delete">删除</a>
                    </script>
                </div>
            </div>
        </div>

    </div>
</div>


<script src="${request.contextPath}/static/lib/layui-v2.6.3/layui.js" charset="utf-8"></script>
<script>
    layui.extend({
        dtree: '${request.contextPath}/static/lib/layui_ext/dtree/dtree'   // {/}的意思即代表采用自有路径,即不跟随 base 路径
    }).use(['layer', 'form', 'table', 'util', 'dtree'], function () {
        var $ = layui.jquery;
        var layer = layui.layer;
        var form = layui.form;
        var table = layui.table;
        var util = layui.util;
        var dtree = layui.dtree;
        var s_categoryId;
        function tableRender(categoryId){
            s_categoryId = categoryId;
            table.render({
                elem: '#currentTableId',
                url: '${request.contextPath}/petInfo/listData',
                toolbar: '#toolbarDemo',
                defaultToolbar: ['filter', 'exports', 'print', {
                    title: '提示',
                    layEvent: 'LAYTABLE_TIPS',
                    icon: 'layui-icon-tips'
                }],
                cols: [[
                    {field: 'categoryName', width: 126, title: '宠物分类'},
                    {field: 'breed', width: 126, title: '宠物品种'},
                    {field: 'name', width: 126, title: '宠物姓名'},
                    {field: 'gender', width: 126, title: '宠物性别',templet: function (d){
                            if (d.gender === 0){
                                return "<span>男</span>";
                            }else {
                                return "<span>女</span>";
                            }
                        }},
                    {field: 'age', width: 126, title: '宠物年龄'},
                    {field: 'weight', width: 126, title: '宠物体重'},
                    {field: 'furColor', width: 126, title: '宠物毛色'},
                    {field: 'expellingParasite', width: 126, title: '是否驱虫',templet: function (d){
                            if (d.expellingParasite === 0){
                                return "<span>是</span>";
                            }else {
                                return "<span>否</span>";
                            }
                        }},
                    {field: 'sterilization', width: 126, title: '是否绝育',templet: function (d){
                            if (d.sterilization === 0){
                                return "<span>是</span>";
                            }else {
                                return "<span>否</span>";
                            }
                        }},
                    {field: 'vaccination', width: 126, title: '是否接种疫苗',templet: function (d){
                            if (d.vaccination === 0){
                                return "<span>是</span>";
                            }else {
                                return "<span>否</span>";
                            }
                        }},
                    {field: 'source', width: 126, title: '数据来源',templet: function (d){
                            if (d.expellingParasite === 0){
                                return "<span>系统录入</span>";
                            }else {
                                return "<span>用户发布</span>";
                            }
                        }},
                    {title: '操作', width: 126, toolbar: '#currentTableBar', align: "center"}
                ]],
                limits: [10, 15, 20, 25, 50, 100],
                limit: 15,
                page: true,
                skin: 'row,line',
                where: {categoryId:categoryId}
            });
        }

        // 监听搜索操作
        form.on('submit(data-search-btn)', function (data) {
            //执行搜索重载
            table.reload('currentTableId', {
                page: {
                    curr: 1
                }
                , where: {
                    keyword: data.field.keyword,
                    categoryId:s_categoryId,
                    gender:data.field.gender,
                    expellingParasite:data.field.expellingParasite,
                    sterilization:data.field.sterilization,
                    vaccination:data.field.vaccination,
                    source:data.field.source,
                    status:data.field.status
                }
            }, 'data');
            return false;
        });
        /**
         * toolbar监听事件
         */
        table.on('toolbar(currentTableFilter)', function (obj) {
            if (obj.event === 'add') {  // 监听添加操作
                var index = layer.open({
                    title: '添加宠物',
                    type: 2,
                    shade: 0.2,
                    maxmin:false,
                    shadeClose: true,
                    area: ['800px', '100%'],
                    content: '${request.contextPath}/petInfo/add',
                    //通过end回调
                    end: function(){
                        table.reload('currentTableId');
                    }
                });
                $(window).on("resize", function () {
                    layer.full(index);
                });
            } else if (obj.event === 'delete') {  // 监听删除操作
                var checkStatus = table.checkStatus('currentTableId')
                    , data = checkStatus.data;
                layer.alert(JSON.stringify(data));
            }
        });
        table.on('tool(currentTableFilter)', function (obj) {
            var data = obj.data;
            if (obj.event === 'edit') {

                var index = layer.open({
                    title: '编辑宠物',
                    type: 2,
                    shade: 0.2,
                    maxmin:false,
                    shadeClose: true,
                    area: ['800px', '100%'],
                    content: '${request.contextPath}/petInfo/edit?id='+data.id,
                    //通过end回调
                    end: function(){
                        table.reload('currentTableId');
                    }
                });
                $(window).on("resize", function () {
                    layer.full(index);
                });
                return false;
            } else if (obj.event === 'delete') {
                layer.confirm('真的删除么', function (index) {
                    layer.close(index);
                    $.ajax({
                        type : "get",
                        url : "${request.contextPath}/petInfo/delete?id="+data.id,
                        async : false,
                        success : function(result){
                            if (result.success){
                                var d_index = layer.alert("删除成功", {
                                    title: '提示'
                                }, function () {
                                    // 关闭弹出层
                                    layer.close(d_index);
                                    table.reload('currentTableId');
                                });
                            }else{
                                layer.alert(result.msg,{icon: 2});
                            }
                        }
                    });
                });
            }
        });
        // 初始化树
        var DemoTree = dtree.render({
            elem: "#ltTree",
            method: 'GET',
            url: "${request.contextPath}/petCategory/listAll", // 使用url加载(可与data加载同时存在)
            toolbar: true, //更多工具栏用法详见工具栏
            toolbarWay:"fixed",
            toolbarShow: []
            , done: function (data, url, first) {
                //默认选中第一个
                var dTreeid = $("cite").attr("data-id");
                dtree.click(DemoTree, dTreeid);
                tableRender(dTreeid);
            },
            toolbarFun:{
                loadToolbarBefore: function(buttons, param, $div){
                    console.log(buttons);
                    console.log(param);
                    console.log($div);
                    buttons.addToolbar = "";  // 取消新增功能
                    buttons.editToolbar = ""; //取消编辑功能
                    buttons.delToolbar = "";
                    return buttons; // 将按钮对象返回
                }
            },
            toolbarExt:[
                {
                    toolbarId: "del",
                    icon: "dtree-icon-roundclose",
                    title: "删除",
                    handler: function (node, $div) {
                        layer.confirm('真的删除么', function (index) {
                            layer.close(index);
                            layer.msg(JSON.stringify(node));
                        });
                    }
                }
            ]
        });
        // 绑定节点点击
        dtree.on("node('ltTree')" ,function(obj){
            table.reload("currentTableId", {
                //点击加载右边表格
                where: {categoryId:obj.param.nodeId}
            })
        });
    });
</script>
</body>
</html>

到了这里,关于Layui+dtree实现左边分类列表,右边数据列表的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 小程序 | 微信小程序实现商品分类列表

    小程序 | 微信小程序实现商品分类列表 一、效果展示 二、代码实现

    2024年02月11日
    浏览(50)
  • opencv进阶19-基于opencv 决策树cv::ml::DTrees 实现demo示例

    cv::ml::DTrees类表示单个决策树或决策树集合,它是RTrees和 Boost的基类。 CART是二叉树,可用于分类或回归。对于分类,每个叶子节点都 标有类标签,多个叶子节点可能具有相同的标签。对于回归,每个叶 子节点都被分配了常数,因此近似函数是分段常数。 创建空决策树 cv::

    2024年02月11日
    浏览(51)
  • layui table列表下拉选操作

        列表中增加下拉选    有的人说样式需要调整,加一个下边这个,不然下拉选打开会显示不出来,我的没有这种情况,大家根据情况使用  数据获取和调用后台接口  原文地址:layui学习——数据表格嵌套下拉列表,并实现动态更新 - 夏末蝉未鸣 - 博客园 我文章里是我的

    2024年02月11日
    浏览(36)
  • Layui列表复选框根据条件禁用

    2024年02月12日
    浏览(49)
  • Spring boot+Vue博客平台:文章列表展示、文章分类与标签管理模块实现

    本文将详细介绍如何实现博客平台中的文章列表展示、文章分类与标签管理功能,包括前端的Vue组件设计和后端的Spring Boot接口实现。在阅读本文后,您将了解如何设计和实现高效、易用的文章列表展示、文章分类与标签管理功能。 1.设计思路 在设计文章列表展示功能时,我

    2023年04月11日
    浏览(55)
  • layui实现(学生)数据的增删改查

    查询 添加: 点击添加按钮: 添加成功! 修改: 点击编辑按钮: 修改信息数据,点击提交: 修改数据成功! 删除: 点击删除按钮: 点击确定,删除成功! 分页: 由于数据有限,选择5条/页,进行分页: 批量删除: 首先勾选想要删除的行,点击批量删除: 删除成功: 补

    2023年04月09日
    浏览(40)
  • layui+java spring 实现图片文件新增到数据库

    layui+java spring 实现图片文件新增到数据库 1.首先layui是个不再更新的网址有想了解的可以浏览官网 表格组件 table - Layui 文档 2.官网内有专门的组件 代码直接粘过来即可 !DOCTYPE html html head   meta charset=\\\"utf-8\\\"   meta name=\\\"viewport\\\" content=\\\"width=device-width, initial-scale=1\\\"   titleDemo/title  

    2024年02月07日
    浏览(40)
  • SpringBoot+layUI实现表格的某一列数据刷新功能案例分享

    ✅作者简介:2022年 博客新星 第八 。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏:Java案例分享专栏 ✨特色专栏:国学周更-心性养成之路 🥭本文内容:如何入门Python——学习

    2024年02月06日
    浏览(80)
  • 利用悬浮窗加PopupWindow实现从手机屏幕右边划出应用快捷切换

    效果如上图所示 安卓小白记录学习过程。一起交流学习。有问题请多多指出。话不多说进入正题。 一、思路 首先明确需求,我们需要做一个右划弹出一个快捷切换应用的弹窗。 悬浮窗可以在其他应用上层显示出来,那么我们可以设置一个透明的悬浮窗让它显示在其他应用上

    2024年02月11日
    浏览(42)
  • 基于SpringBoot 2+Layui实现的管理后台系统源码+数据库+安装使用说明

    一个基于SpringBoot 2 的管理后台系统,包含了用户管理,组织机构管理,角色管理,功能点管理,菜单管理,权限分配,数据权限分配,代码生成等功能 相比其他开源的后台系统,SpringBoot-Plus 具有一定的复杂度 系统基于Spring Boot2.1技术,前端采用了Layui2.4。数据库以MySQL/Oracle

    2024年02月04日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包