layui实现自动分页以及数据表格的重载

在我们直接用layui的表格的接收后台全部数据的时候,所有数据会在同一页显示,无法实现自动分页,最近写项目的时候碰到了这个问题,把我的解决办法记录下来,以后可能会用到。加一条实现搜索的功能
html部分

<div class="layuimini-container" style="margin-top: 60px">
    <div class="layuimini-main">

        <fieldset class="table-search-fieldset">
            <legend>搜索信息</legend>
            <div style="margin: 10px 10px 10px 10px">
                    <div class="layui-form-item">
                        <div class="layui-inline">
                            <label class="layui-form-label"style="width: 100px;">事务标题:</label>
                            <div class="layui-input-inline">
                                <input type="text" name="title" id="title" autocomplete="off" class="layui-input">
                            </div>
                        </div>
                        <div class="layui-inline">
                            <label class="layui-form-label">开始日:</label>
                            <div class="layui-input-inline">
                                <input type="text" id="start"  name="start" autocomplete="off" class="layui-input">
                            </div>
                        </div>
                        <div class="layui-inline">
                            <label class="layui-form-label">截止日:</label>
                            <div class="layui-input-inline">
                                <input type="text" id="end" name="end" autocomplete="off" class="layui-input">
                            </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>
            </div>
        </fieldset>

        <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="look">查看</a>
        </script>

    </div>
</div>

js部分

    layui.use(['form', 'table','laydate','laypage'], function () {
        var $ = layui.jquery,
           table = layui.table;
   table.render({
            elem: '#currentTableId',
            url: '../api/table2.1.json',//你自己的接口
            toolbar: 'true',//头部工具栏
            height:500,//表格高度
            cols: [[
                {type: "checkbox", width: 50},
                {field: 'id', width: 130, title: '事务ID', sort: true},
                {field: 'title', width: 250, title: '事务标题'},
                {field: 'type', width: 150, title: '事务类型'},
                {field: 'task', width: 150, title: '事务分类'},
                {field: 'create_time', width: 200, title: '发布时间', sort: true},
                {field: 'finish-time', width: 200, title: '截止时间', sort: true},
                {title: '操作', minWidth: 150, toolbar: '#currentTableBar', align: "center"}
            ]],
            skin: 'row '//设定表格各种外观、尺寸等
            ,id: 'tableAll'//设定容器唯一 id。
            ,page: true//开启分页
            , limits: [10, 15, 20]  //一页选择显示3,5或10条数据
            , limit: 10 //一页显示6条数据
            , parseData: function (res) { //将原始数据解析成 table 组件所规定的数据,res为从url中get到的数据
                var result;
                // console.log(this);
                // console.log(JSON.stringify(res));
                if (this.page.curr) {
                    result = res.data.slice(this.limit * (this.page.curr - 1), this.limit * this.page.curr);
                }
                else {
                    result = res.data.slice(0, this.limit);
                }
                return {
                    "code": res.code, //解析接口状态
                    "msg": res.msg, //解析提示文本
                    "count": res.count, //解析数据长度
                    "data": result //解析数据列表
                };
            }
        });
        //数据表格的重载
        $('.layui-btn').click(function () {
            table.reload('tableAll', {
                url: '../api/table2.1search.json'//向后台发送请求
                ,methods:"post"
                ,where: {
                    title :$('#title').val(),//搜索条件
                    start:$('#start').val(),
                    end:$('#end').val()
                }
                ,page: {
                    curr: 1 //重新从第 1 页开始
                }
            });
        })
        });
  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值