首页 > 其他分享 >layUI Table自定义工具栏和搜索参数

layUI Table自定义工具栏和搜索参数

时间:2024-04-15 15:01:39浏览次数:29  
标签:工具栏 自定义 val title layUI field state layui table

layUI Table自定义工具栏和搜索参数

视频讲解地址 https://www.bilibili.com/video/BV1P94y197nN

HTML代码

<div class="container-fluid">
    <table class="layui-hide" id="test" lay-filter="test"></table>
</div>
<style>
    .layui-input, .layui-unselect, .layui-select-title {
        height: 30px;
    }
</style>
<script type="text/html" id="toolbarDemo">
    <div class="layui-btn-group">
            <button type="button" class="layui-btn layui-btn-primary layui-btn-sm" lay-event="add" style="padding:0px 3px 0px 5px">
                <i class="layui-icon">&#xe654;</i>
            </button>
            <button type="button" class="layui-btn layui-btn-primary layui-btn-sm" lay-event="update" style="padding:0px 3px 0px 5px">
                <i class="layui-icon">&#xe642;</i>
            </button>
            <button type="button" class="layui-btn layui-btn-primary layui-btn-sm" lay-event="delete" style="padding:0px 3px 0px 5px">
                <i class="layui-icon">&#xe640;</i>
            </button>
        </div>
 
    <div class="layui-inline ">
        <input type="text" id="orderID"  placeholder="订单号" autocomplete="off" class="layui-input" style="height:30px;width:110px">
    </div>
    <div class="layui-inline " style="width:100px">
        <select id="orderState">
            <option value="0">所有状态</option>
            <option value="1">已支付</option>
            <option value="2">未支付</option>
            <option value="3">已结算</option>
        </select>
    </div>
    <button type="button" class="layui-btn layui-btn-primary layui-btn-sm" lay-event="search" style="padding:0px 3px 0px 5px">
        <i class="layui-icon">&#xe615;</i>
    </button>
</script>

JS代码

layui.use(['table', 'layer', 'jquery'], function () {
    var table = layui.table,
        layer = layui.layer, //弹层
        $ = layui.jquery
    if (localStorage.getItem("layuiPageSize") == null || localStorage.getItem("layuiPageSize") == 'undefined') {
        localStorage.setItem("layuiPageSize", 20);//添加每页默认数据条数
    }
    let guid = getGUID();
    table.render({
        elem: '#test',
        url: '../api/OrderInfo/Query', //获取数据url地址
        title: '用户数据表',
        toolbar: '#toolbarDemo',//开启工具栏,此处显示默认图标,可以自定义模板,详见文档
        defaultToolbar: false,//表头上面的右侧工具栏去掉
        page: {
            limit: localStorage.getItem("layuiPageSize")//默认每页多少条
            , limits: [20, 30, 50, 100, 200, 300, 500]//选择  显示每页多少条
            //, first: '首页'
            //,last: '尾页'
        },
        where: {
            orderid: $('#orderID').val(),
            UserName: $.cookie('uName'),
            GUID: guid,
            state: $("#orderState").val()
        },
        id: 'testReload',
        cols: [
            [{
                type: 'checkbox',
                fixed: 'left'
            }, {
                field: 'orderid',
                title: '订单号',
                width: 205,
                //fixed: 'left',
                //unresize: true,
                //sort: true
            }, {
                field: 'UserName',
                title: '用户名',
                width: 120,
                edit: 'text'
            }, {
                field: 'money',
                title: '金额',
                width: 80,
                edit: 'text'
            }, {
                field: 'subject',
                title: '摘要',
                width: 120,
                edit: 'text'
            }, {
                field: 'body',
                title: '月数',
                width: 60
            }, {
                field: 'state',
                title: '状态',
                    width: 75, templet: function (d) {
                        if (d.state == 1) {
                            return '已支付'
                        } else if (d.state == 2) {
                            return '未支付'
                        } else if (d.state == 3) {
                            return '已结算'
                        }
                    }
            }, {
                field: 'OrderTime',
                title: '订单时间'
            }]
        ],
        done: function (obj, first) {
            let pageSize = $(".layui-laypage-limits").find("option:selected").val();
            localStorage.setItem("layuiPageSize", pageSize);//添加数据
        }
    });
    //监听头工具栏事件
    table.on('toolbar(test)', function (obj) {
        var checkStatus = table.checkStatus(obj.config.id)
            , data = checkStatus.data; //获取选中的数据
        switch (obj.event) {
            case 'add':
                alert("功能没开放");
                break;
            case 'update':
                alert("功能没开放");
                break;
            case 'search':
                let search = $('#orderID').val();
                let state = $("#orderState").val();
                table.reload('testReload',{
                    page: {
                        curr: 1 //重新从第 1 页开始
                    },
                    where: {
                        orderid: $('#orderID').val(),
                        UserName: $.cookie('uName'),
                        GUID: guid,
                        state: $("#orderState").val()
                    }
                });
                $('#orderID').val(search);//重加载后,重新赋值上次搜索的内容
                $("#orderState").val(state);
                break;
            case 'delete':
                alert("功能没开放");
                break;
        };
    });
})

标签:工具栏,自定义,val,title,layUI,field,state,layui,table
From: https://www.cnblogs.com/HeroZhang/p/18135961

相关文章

  • layUI layer弹框按钮 : 确认,取消,关闭事件
    layUIlayer弹框按钮:确认,取消,关闭事件layer.open({title:'头信息',btn:['确认','取消','按钮3'],//多个按钮直接用btn1/btn2/btn3...回调area:['85%','95%'],content:"<divstyle='font-size:15px......
  • SSM使用自定义ConditionalOnProperty实现按需加载spring bean
    SSM使用自定义ConditionalOnProperty实现按需加载springbean背景:公司提供的系统框架是SSM架构,SSM架构是没有springboot的ConditionalOnProperty注解的,而我们的系统是在很多区县部署的,每个区县会有一些定制化需求,其中有一个类只在一个区县里用得到,所以打算采用按需加载bean的......
  • el-table-column自定义实现el-tooltip效果
    说明使用el-table-column自定义某列内容为左侧展示商品图片,右侧展示商品标题以及id,商品标题超过两行显示省略号,并且鼠标移入在上方显示完整。界面展示template...<el-table-columnlabel="商品信息"prop="title"min-width="200"><template#default="scope"><div......
  • Feign日志 - 自定义 info级别打印
    背景由于feign,默认只有debug的level,才能打印出日志。不太符合一般项目的loginfolevel的约定。因此决定自定义feign的log打印。目的在infolevel下,可以打印feign日志寻找线索打开openfeign的核心包目录寻找log相关类 feign-1.png通过FeignLoggerfactor......
  • Entity Framework 自定义外键关系
    EntityFramework自定义外键关系在EntityFramework中,你可以通过在模型类中使用属性来定义自定义外键关系。以下是一个简单的例子,展示了如何在两个实体之间创建一对一的关联关系:  publicclassUser{publicintUserId{get;set;}publicstringUsername......
  • Redefine library-自定义函数库
    1.jjVolcano_Redefinelibrary(scRNAtoolVis)#jjVolcano只有9个颜色,Redefine到我的24个颜色,并与我umap中的分群颜色对应jjVolcano_Redefine<-function(diffData=NULL,myMarkers=NULL,order.by=c("avg_log2FC"),log2FC.cutoff=0.......
  • 实现自定义注解校验方法参数(AOP+自定义注解+自定义异常+全局异常捕获)
    一、实现目的在编写接口的时候,通常会先对参数进行一次校验,这样业务逻辑代码就略显冗杂,如果可以把校验参数的代码进行统一管理,在方法或者属性上直接添加注解就可以实现参数的校验,就可以提升代码编写的效率。二、实现原理通过自定义注解,注解在入参VO的属性上,设定需要满足的条件,然......
  • Windows 自定义服务(Windows Service)管理
    Windows自定义服务(WindowsService)管理在Windows系统中,你可以使用sc.exe命令或者PowerShell来创建自定义服务。以下是两种方法:使用sc.exe命令:打开命令提示符(以管理员身份运行)。使用sc.exe命令创建服务,语法如下:sccreate<ServiceName>binPath="<PathtoE......
  • Ant - Form 自定义组件 form.getFiledsValue 如何获取值
    import{FC,useState}from'react';importtype{SelectProps}from'antd';import{Select,Space,Flex,Input,Button}from'antd';/***扩展选择器组件,可以通过键盘enter输入一个Option*/constInputSelect:FC<{defaultOptio......
  • C语言10-指针(多级指针、空指针、野指针),自定义数据类型(枚举enum、结构体struct)
    第12章指针pointer12.6多级指针指向指针的指针称为多级指针eg:int*ptr1=&num; int**ptr2=&ptr1; int***ptr3=&ptr2;12.7空指针应用场景:1.暂时不确定指向的指针,可以在定义的时候先赋值为NULL2.有些指针函数,如果内部出现异常无法成功实现功能,可以返回NUL......