layui的自定义page

2023-10-31

一:前端页面使用laypage

<div id="demo20" align="center" style="margin-top: 20px;"></div>
  let totalCount = 0;
        getPageData(1, 6);

        function getPageData(page, limit) {
            $.ajax({
                type: "post",
                async: false,
                url: "/product/getProductList?categoryId=${categoryId}",
                data: {
                    page: page,
                    limit: limit
                },
                success: function (data) {
                    console.log(data);
                    totalCount = data.count;//数据总数量
                    //这里渲染页面吧。
                    let innerHtml = "";
                    data.data.forEach((item, index, arr) => {
                        console.log(item);
                        innerHtml += `  <div class="layui-col-xs12 layui-col-sm12 layui-col-md3 zhuyeRightContent">
                    <div class="layui-row" style="padding-left: 20px;height: 200px;">
                        <div class="layui-col-xs12 layui-col-sm12 layui-col-md12">
                            <img src="${"${item.introduceImage}"}" height="150px" width="250px;">
                        </div>
                        <div class="layui-col-xs12 layui-col-sm12 layui-col-md12">
                            商品名称:${"${item.productName}"}
                        </div>
                        <div class="layui-col-xs10 layui-col-sm10 layui-col-md9">
                            商品价格:${"${item.price}"}¥
                        </div>
                        <div class="layui-col-xs2 layui-col-sm2 layui-col-md3">
                            <a class="toOrder" id="${"${item.id}"}" href="javascript:void(0)">下单</a>
                        </div>
                    </div>
        </div>`;
                        document.getElementById('productIdHtml').innerHTML = innerHtml;

                    });


                }
            });
        }

        /**
         * //执行一个laypage实例
         */
        var currPageNum;
        laypage.render({
            elem: 'demo20' //注意,这里的 test1 是 ID,不用加 # 号
            , count: totalCount //数据总数,从服务端得到
            , limit: 6
            , jump: function (obj, first) {
                currPageNum = obj.curr;
                getPageData(obj.curr, 6);
            }
        });

效果如图:

默认的分页,样式居中如下,laypage居中可使用css居中;text-align:center;

<style>
    .layui-table-page {
        text-align: center;
    }
</style>

二.后端表格使用laypage

第一步:从后台获取第一页表格数据

第二步:渲染表格

第三步:创建laypage实例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <link rel="stylesheet" href="/layui2.45/css/layui.css" />
    <script type="text/javascript" src="/layui2.45/layui.js"></script>
    <style>
        .layui-table-page {
            text-align: center;
        }
    </style>
</head>
<body>
<table id="demo" lay-filter="test"></table>
<div id="test1" style="text-align: center"></div>
<script type="text/html" id="barDemo">
    <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>
<script>
    layui.use(['table','laypage'], function(){
        var table = layui.table;
        var laypage=layui.laypage;
        var $ = layui.jquery;//引入jquery的模块

        /**渲染表格
         * */
        function renderTable(data) {
            //第一个实例
            table.render({
                elem: '#demo'
                ,height: 512
                // ,url: '/getCity3' //数据接口
                // ,page: true //开启分页
                ,toolbar: '#toolbarDemo'
                ,cols: [[ //表头
                    {field: 'id', title: 'ID', sort: true, fixed: 'left'},
                    {field: 'name', title: '名称'}
                    ,{field: 'countryCode', title: '城市代码',sort: true}
                    ,{field: 'district', title: 'district'}
                    ,{field: 'population', title: 'population'}
                    ,{fixed: 'right', title:'操作', toolbar: '#barDemo', width:150}
                ]],
                data:data
            });

        }
        /**
         * 从后台获取分页数据
         * @param page
         * @param limit
         */
        var totalCount;
        getTableData(1, 10);

        function getTableData(page, limit) {
            $.ajax(
                {
                    type: "get",
                    async: false,//同步进行。一步一步的来
                    url: "/getCity3",
                    data: {
                        page: page,
                        limit: limit
                    }, success: function (data) {
                        console.log(data);
                        totalCount = data.count;//数据总数量
                        renderTable(data.data);
                    },
                    dataType: "json"
                }
            );
        };

        /**
         * //执行一个laypage实例
         */
        var currPageNum;
        laypage.render({
            elem: 'test1' //注意,这里的 test1 是 ID,不用加 # 号
            , count: totalCount //数据总数,从服务端得到
            , jump: function (obj, first) {
                console.log(obj);
                console.log(obj.curr + "当前页");
                currPageNum = obj.curr;
                //obj包含了当前分页的所有参数,比如:
                //首次不执行
                if (!first) {
                    getTableData(obj.curr, 10);
                } else {
                    getTableData(1, 10);
                }
            }
        });



    });

</script>
</body>
</html>

至此:laypage的两个方向的使用完成;

如有不解,请加java爱好群大家交流:852665736;大家一起交流,一同进步;

无偿免费分享源码以及技术和面试文档,更多优秀精致的源码技术栈分享请关注公众号:gh_817962068649

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

layui的自定义page 的相关文章

随机推荐

  • Android程序员必备!Android学习笔记在互联网上火了,成功定级腾讯T3-2

    前言 2020年是转折的一年 上半年疫情原因 很多学android开发的小伙伴失业了 虽找到了一份工作 但高不成低不就 下半年金九银十有想法更换一份工作 很多需要大厂面试经验和大厂面试真题的小伙伴 想提前准备刷下题 接下来分享一份我的字节跳
  • 财务风险管理的内容

    财务风险管理的内容 一 筹资风险管理 筹资风险来源于两个方面 一是偿债风险 由于借入资金严格规定了借款方式 还款期限和还款金额 如果企业负债较多 而经营管理和现金管理不善 可能导致企业不能按期还本付息 就会产生偿债风险 偿债风险如不能通过财
  • nginx:accept() failed (24: Too many open files)解决方法

    有一台服务器访问量非常高 使用的是nginx 错误日志不停报以下错误 2010 05 26 08 53 49 alert 13576 0 accept failed 24 Too many open files 2010 05 26 08
  • 【R语言】期末大作业

    头部 title LZW HR dashboard report output flexdashboard flex dashboard orientation columns vertical layout fill source cod
  • Ant Design Cascader 交互场景

    何时使用 需要从一组相关联的数据集合进行选择 例如省市区 公司层级 事物分类等 从一个较大的数据集合中进行选择时 用多级分类进行分隔 方便选择 比起 Select 组件 可以在同一个浮层中完成选择 有较好的体验 业务场景 提交选择器子选项
  • C++面试题(四)——智能指针的原理和实现

    C 面试题 四 智能指针的原理和实现 tanglu2004 http blog csdn net worldwindjp C 面试题 一 二 和 三 都搞定的话 恭喜你来到这里 这基本就是c 面试题的最后一波了 1 你知道智能指针吗 智能指
  • Commit Lint 代码提交规范

    Commit Lint 代码提交规范 前端后端都可以这样配置的 install commitlint npm install save dev commitlint config conventional commitlint cli In
  • 【待完成】从StrongPity一联网组件到APT的溯源与追踪-中-从单一样本到历史样本和初始载荷

    从单一样本追踪溯源APT历史样本和初始载荷 基于PE结构寻找同源样本 Icon图标Hash ImpHash和version info 基于组件找初始载荷 通过初始载荷扩线 基于PE结构寻找同源样本 Icon图标Hash 通过VT搜索该PE文
  • Python爬虫案例解析:五个实用案例及代码示例(学习爬虫看这一篇文章就够了)

    导言 Python爬虫是一种强大的工具 可以帮助我们从网页中抓取数据 并进行各种处理和分析 在本篇博客中 我们将介绍五个实用的Python爬虫案例 并提供相应的代码示例和解析 通过这些案例 读者可以了解如何应用Python爬虫来解决不同的数
  • L-shape 方法

    L shape 方法是求解两阶段随机规划的一种常用方法 基本思想是利用切平面将第二阶段的反馈函数线性化 在构造切平面条件时有点类似 bender s 方法 注 这个图形中黑实线 Q x mathcal Q x Q x 就是下面模型中的
  • 【已解决】ModuleNotFoundError: No module named ‘distutils.util‘

    系统从Ubuntu18 04升级到20 04 内核也变动了很多次 之前运行在python3 6正常的代码突然报错 ModuleNotFoundError No module named distutils util 网上的解决方法 sudo
  • 字节跳动技术团队年度 TOP10 技术干货,陪你度过不平凡的 2020

    2020 注定是不平凡的一年 在这特殊的一年里 字节跳动技术团队依旧在技术人身边 分享字节跳动的技术实践 本年度字节跳动技术团队共发布了50篇技术干货 其中许多都受到读者的喜爱 值此元旦佳节 我们精选出了其中最受大家欢迎的10 篇文章 供大
  • r语言向量代码如何创建函数c,如何使用R中的rep函数生成的向量创建矩阵?

    仅当我们传递偶数个元素时 才能生成矩阵 如果要使用由rep函数生成的向量创建矩阵 则该向量的长度必须可除以2 例如 如果我们有一个由rep函数创建的向量x 其长度为20 则矩阵说M可以使用matrix x ncol 2 构造使用该向量的10
  • 实验9 I/O流(P293)

    实验目的和要求 1 掌握格式化的输入输出方法 2 熟悉系统提供的输入操作函数 3 掌握磁盘文件的输入输出方法 实验内容 1 程序sy9 1 cpp用以打印表中的数据 但程序中存在逻辑错误 上机调试后写出正确的代码 原程序如下 sy9 1 c
  • 使用javascript写一个CRC16(CCITT)校验

    CRC16 CCITT 校验是一种用于数据传输的常用校验方法 在 JavaScript 中 我们可以使用以下代码实现这种校验 function crc16 data var crc 0xFFFF var polynomial 0x1021
  • 如何分析AWR报告

    AWR 存储位置 SYSAUX表空间 详细信息视图dba hist snapshot 存储策略 60分钟一个 存七天 用途 AWR并不像其他V 视图或者表一样诊断实时问题 只是用来诊断历史性能问题 比如数据库响应慢 大量等待事件 慢SQL
  • 永洪BI助力华海药业数字化转型,挖掘药企发展新优势

    医药制造业是我国国民经济的重要组成部分 在整个消费市场中有着举足轻重的地位 对于生物医药企业来讲 只有合规运营 降本增效 才能保持长期可持续发展 这种情况下 数字化转型将成为生物医药企业的必然选择 也是我国药企向创新型技术型转型升级 提升自
  • Unity3d

    环境配置及Vuforia的使用 vuforia官网 https developer vuforia com 环境配置 vuforia内的SDK支持的Unity版本现为2018 4 所以需要下载Unity2018 4版本 笔者下载的是2018
  • Matlab如何从dat或者txt文件读入数据

    Matlab中可以使用命令 load data dat 或者 load data txt 或者 data in textread data txt data in textread data dat 以上两个命令 只适用于纯数据 且只有一列
  • layui的自定义page

    一 前端页面使用laypage div align center style margin top 20px div let totalCount 0 getPageData 1 6 function getPageData page li