• table-layui


    本文章为原创文章,转载请注明出处

    html

    <div class="layui-btn-group tableBtn">
                <button class="layui-btn" data-type="add">添加</button>
            </div>
            <table class="layui-table" id="tableData" lay-filter="tableData"></table>
    toolbar操作按钮
    <script type="text/html" id="operationBtn">
                    <a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
                    <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
                </script>
    数据绑定
    function initTable(){
                    //tableIns存储table.render()方法返回的对象,以便重载table时使用
                    tableIns = table.render({
                        elem: '#tableData' //对应table的id (table 容器的选择器或 DOM)
                        ,url:'/UserInfo/GetData' //请求路径
                        ,method:'post'  //请求方式 ,默认get
                        ,page:true  //是否启用分页
                        ,cellMinWidth: 50 //全局定义常规单元格的最小宽度,layui 2.2.1 新增
                        ,cols: [[
                            {type:'checkbox'}
                            ,{field:'ID', title: 'ID',align:'center', sort: true}
                            ,{field:'Sex', title: '性别',align:'center', sort: true,templet:function(row){//处理特殊数据自 layui 2.2.5 开始,templet 开始支持函数形式,函数返回一个参数,包含接口返回的所有字段和数据
                                if(row.Sex) return '男';
                                return '女';
                            }} //
                            ,{field:'Autograph', title: '签名', minWidth: 100,align:'center'} //minWidth:局部定义当前单元格的最小宽度,layui 2.2.1 新增
                            ,{toolbar:'#operationBtn',title:'操作',align:'center'} //绑定列工具条。设定后,可在每行列中出现一些自定义的操作性按钮 operationBtn对应的是上面的toolbar操作按钮
                        ]] //设置表头
                        ,limits:[30,60,90] //每页条数的选择项,默认 [10,20,30,40,50,60,70,80,90]
                        ,limit:30 //每页显示的条数,默认:10
                    });
                }
    按钮的对应事件写法
    var $ = layui.$, active = {
                    add: function(){ //add 是添加按钮data-type的值
                        //do something
                    }
                };
                //调用tableBtn对应的active事件
                 $('.tableBtn .layui-btn').on('click', function(){
                    var type = $(this).data('type');
                    active[type] ? active[type].call(this) : '';
                });
    操作按钮事件
    //监听工具条 `table.on('event(filter)', callback);` event为内置事件名,filter为容器lay-filter设定的值 
                    table.on('tool(tableData)', function(obj){
                        var data = obj.data;
                        //删除
                        if(obj.event === 'del'){
                            layer.confirm('确定删除吗', function(index){
                                //do something 点击确定时执行该处代码
                            });
                        } else if(obj.event === 'edit'){
                            //do something
                        }
                    });
    table重载
    //table重载
                function reload(){
                    tableIns.reload();//此处的tableIns就是渲染table时的返回值
                }

    分页条

    page:true开启分页条

    页码默认参数:page

    每页条数默认参数:limit

    自定义配置参数
    request: {
                pageName: 'curr', //页码的参数名称,默认:page
                limitName: 'nums' //每页数据量的参数名,默认:limit
            }
    自定义数据格式
    response: {
            statusName: 'status', //数据状态的字段名称,默认:code
            statusCode: 200, //成功的状态码,默认:0
            msgName: 'hint', //状态信息的字段名称,默认:msg
            countName: 'total', //数据总数的字段名称,默认:count
            dataName: 'rows', //数据列表的字段名称,默认:data
        }   
    自定义后台返回数据格式(上述)
    {
                status: 200,
                hint: "",
                total: 1000,
                rows: []
            } 
    默认接受数据格式
    {
                code: 0,
                msg: "",
                count: 1000,
                data: []
            } 

     更多table操作请参考 http://www.layui.com/doc/modules/table.html

  • 相关阅读:
    Linux CentOS7 下设置tomcat 开机自启动
    MYSQL批量导入数据报:[Err] 2006
    HTML页面仿WORD样式
    /usr/bin/ld: cannot find -lxxx 问题
    Linux 重命名
    Linux mail
    cenos 7 mysql
    linux 解压与压缩
    python 字符串替换
    cpu相关信息(进程、线程、核...)
  • 原文地址:https://www.cnblogs.com/xiaonangua/p/9172050.html
Copyright © 2020-2023  润新知