layui 简单实现 TABLE 分页功能

该博客演示了如何在HTML中使用Layui库创建带分页功能的表格,并与后台MVC控制器进行交互。通过引入layui.css和layui.js,设置表格配置并定义请求参数,实现了表格数据的动态加载和分页。在MVC端,模拟生成JSON数据响应前端请求。预览显示了表格加载的数据。源码可在指定链接下载。
摘要由CSDN通过智能技术生成

HTML:

<!-- 引入 layui.css -->
<link rel="stylesheet" href="//unpkg.com/layui@2.6.8/dist/css/layui.css">

<!-- 引入 layui.js -->
<script src="//unpkg.com/layui@2.6.8/dist/layui.js">


<table class="layui-hide" id="test"></table>
<script>
    layui.use('table', function () {
        var table = layui.table;
        table.render({
            elem: '#test'//对应着Table的ID
            , method: 'get'
            , url: '/Demo/GetJson2'//URL为数据接口的地址
            , request: {  //自定义 page  limit
                pageName: 'pageNo',    //页码的参数名称,默认:page
                limitName: 'pageSize'  //每页数据量的参数名,默认:limit
            }
            , parseData: function (res) {
                return {
                    "code": 0,//数据类型,必须的
                    "count": res.count,//总记录数,用于分页
                    "data": res.data,//必须的
                }
            }
            , cellMinWidth: 80 //全局定义常规单元格的最小宽度,layui 2.2.1 新增
            , cols: [[
                { field: 'id', title: '编号', width: 80, sort: true }
                , { field: 'name', title: '姓名', width: 100, sort: true }
                , { field: 'age', title: '年龄', width: 80, sort: true}
                , { field: 'sex', title: '性别', width: 80, sort: true }
            ]],
            limits: [15, 30, 50, 100],
            limit: 15,
            page: true,
        });
    });
</script>

MVC:

//模拟生成一个JSON
public ActionResult GetJson2(int pageNo, int pageSize)
{
            Random ra = new Random();//随机数
            int count = pageSize * 10;//总记录数

            string json = "";
            json += "{";
            json += "\"count\":" + count + ",";

            string data = "\"data\":[";
            for (int i = ((pageNo - 1) * pageSize); i < (pageNo * pageSize); i++)
            {
                if (data == "\"data\":[")
                {
                    data += "{\"id\":" + (i + 1) + ",\"name\":\"姓名_" + (i + 1).ToString() + "\",\"age\":" + ra.Next(10, 30) + ",\"sex\":\"" + ((i % 3 == 0) ? "女" : "男") + "\"}";
                }
                else
                {
                    data += ",{\"id\":" + (i + 1) + ",\"name\":\"姓名_" + (i + 1).ToString() + "\",\"age\":" + ra.Next(10, 30) + ",\"sex\":\"" + ((i % 3 == 0) ? "女" : "男") + "\"}";
                }
            }
            json += data + "]";

            json += "}";

            return Content(json);
}

 JSON字符串:

{"count":150,"data":[{"id":1,"name":"姓名_1","age":10,"sex":"女"},{"id":2,"name":"姓名_2","age":20,"sex":"男"},{"id":3,"name":"姓名_3","age":20,"sex":"男"},{"id":4,"name":"姓名_4","age":17,"sex":"女"},{"id":5,"name":"姓名_5","age":14,"sex":"男"},{"id":6,"name":"姓名_6","age":12,"sex":"男"},{"id":7,"name":"姓名_7","age":16,"sex":"女"},{"id":8,"name":"姓名_8","age":14,"sex":"男"},{"id":9,"name":"姓名_9","age":14,"sex":"男"},{"id":10,"name":"姓名_10","age":13,"sex":"女"},{"id":11,"name":"姓名_11","age":13,"sex":"男"},{"id":12,"name":"姓名_12","age":25,"sex":"男"},{"id":13,"name":"姓名_13","age":28,"sex":"女"},{"id":14,"name":"姓名_14","age":22,"sex":"男"},{"id":15,"name":"姓名_15","age":28,"sex":"男"}]}

 预览:


简单说明:

  • 开启分页功能:  page: true,
  • 当前每页记录数: limit: 15,
  • 记录数可选的集合: limits: [15, 30, 50, 100],
  • 从layui传递给mvc的分页参数: request: { pageName: 'pageNo', limitName: 'pageSize' }
  • 在mvc接收layui传来分页参数: public ActionResult GetJson2(int pageNo, int pageSize)
  • layui接收mvc传来的值: 

parseData: function (res) {               

return {

                    "code": 0,//数据类型,必须的
                    "count": res.count,//总记录数,用于分页
                    "data": res.data,//必须的
                }
            }


本文源码下载:

https://download.csdn.net/download/djk8888/86341738

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值