• layui 简单实现 TABLE 分页功能


    HTML:

    1. <link rel="stylesheet" href="//unpkg.com/layui@2.6.8/dist/css/layui.css">
    2. <script src="//unpkg.com/layui@2.6.8/dist/layui.js">
    3. <table class="layui-hide" id="test">table>
    4. <script>
    5. layui.use('table', function () {
    6. var table = layui.table;
    7. table.render({
    8. elem: '#test'//对应着Table的ID
    9. , method: 'get'
    10. , url: '/Demo/GetJson2'//URL为数据接口的地址
    11. , request: { //自定义 page limit
    12. pageName: 'pageNo', //页码的参数名称,默认:page
    13. limitName: 'pageSize' //每页数据量的参数名,默认:limit
    14. }
    15. , parseData: function (res) {
    16. return {
    17. "code": 0,//数据类型,必须的
    18. "count": res.count,//总记录数,用于分页
    19. "data": res.data,//必须的
    20. }
    21. }
    22. , cellMinWidth: 80 //全局定义常规单元格的最小宽度,layui 2.2.1 新增
    23. , cols: [[
    24. { field: 'id', title: '编号', width: 80, sort: true }
    25. , { field: 'name', title: '姓名', width: 100, sort: true }
    26. , { field: 'age', title: '年龄', width: 80, sort: true}
    27. , { field: 'sex', title: '性别', width: 80, sort: true }
    28. ]],
    29. limits: [15, 30, 50, 100],
    30. limit: 15,
    31. page: true,
    32. });
    33. });
    34. script>

    MVC:

    1. //模拟生成一个JSON
    2. public ActionResult GetJson2(int pageNo, int pageSize)
    3. {
    4. Random ra = new Random();//随机数
    5. int count = pageSize * 10;//总记录数
    6. string json = "";
    7. json += "{";
    8. json += "\"count\":" + count + ",";
    9. string data = "\"data\":[";
    10. for (int i = ((pageNo - 1) * pageSize); i < (pageNo * pageSize); i++)
    11. {
    12. if (data == "\"data\":[")
    13. {
    14. data += "{\"id\":" + (i + 1) + ",\"name\":\"姓名_" + (i + 1).ToString() + "\",\"age\":" + ra.Next(10, 30) + ",\"sex\":\"" + ((i % 3 == 0) ? "女" : "男") + "\"}";
    15. }
    16. else
    17. {
    18. data += ",{\"id\":" + (i + 1) + ",\"name\":\"姓名_" + (i + 1).ToString() + "\",\"age\":" + ra.Next(10, 30) + ",\"sex\":\"" + ((i % 3 == 0) ? "女" : "男") + "\"}";
    19. }
    20. }
    21. json += data + "]";
    22. json += "}";
    23. return Content(json);
    24. }

     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

  • 相关阅读:
    pytest断言与Selenium模拟操作的规划案例
    spring cloud 入门
    [小项目]手把手教你C语言哈夫曼压缩/解压缩
    快速排序的非递归形式和一个小应用
    A component required a bean of type ‘XXX‘ that could not be found 解决办法
    SolidWorks快捷键
    JDK对String操作优化
    【GO】基础速成
    基于微信电子书小程序设计与实现 开题报告
    网卡介绍篇
  • 原文地址:https://blog.csdn.net/djk8888/article/details/126163042