利用Layui数据表格自带的分页功能实现数据分页显示

表格的渲染在这里就省略了,主要说下最简单的分页方法要点

第一点: 开启分页page:true

 //js表格渲染代码,开启分页page:true
  table.render({
    elem: '#demo'   
    ,url: 'xxx.php' //数据接口
    ,page: true //开启分页
      //其他分页用到的参数按自已需求填写,例如下面这样
    ,limits: [5,10, 20,50]
    ,limit: 10 //每页默认显示的数量 
    ,cols: [[     //表头
      //.....省略一万行代码

进行表格页面时,系统默认请求两个参数:page(当前所在的页)、limit(每页显示的数据记录的数量)。

点击“上一页”或“下一页”或某一页时,也同样会请求默认的这两个参数,方式为:get。

在这里插入图片描述

这两个参数也已经足够完成分页的功能了,因为layui内置的实现的逻辑,我们只需要想办法怎么去返回数据就行了。

第二点:按格式要求返回请求数据

附上返回的格式,后台处理的时候拼接就行了,最后echo 下面这个就能正常接收显示了

{
  "code": 0,
  "msg": "",
  "count": 1000,
  "data": [{}, {}]
}

这里先捋一下:

假设我们限制每页显示10条数据,也就是limit在第一页面的时候发送请求是:xxx/yyy/?page=1&limit=10

点击第二页,自动发送请求:xxx/yyy/?page=2&limit=10

点击第三页,自动发送请求:xxx/yyy/?page=3&limit=10

以此类推…

我们会发现,在请求某一页的数据时,默认传递的参数会自己变化,方便我们返回该页的数据。

后台处理思路:

1、查询数据库:SELECT *……,得到总记录数,赋值给count

2、取出某一页的全部记录:赋值给data

page=2&limit=20:sql的查询语句是:SELECT * FROM xxtable LIMIT 10,20";

page=3&limit=30:sql的查询语句是:SELECT * FROM xxtable LIMIT 20,30";

总结出某一页的查询语句为:SELECT * FROM xxtable LIMIT limit *(page-1) , limit;

这样第二页的数据就查出来了,然后赋值给data就ok

这样,

//xxx.php页面,处理请求,这里只列出部分代码
//后台接收到page与limit参数
$page=isset($_GET[ 'page' ])?$_GET['page']:1;
$limit=isset($_GET[ 'limit' ])?$_GET['limit']:10;
$cur = (page-1)*limit;

//两个查询语句
$sqlAll = "SELECT * FROM table";
$sqlCur = "SELECT * FROM table LIMIT $cur,$limit";

//获取总记录数(这里使用PDO与数据库交互的方法,用原生的也是一样的)
$result = $PDO->query($sqlAll);//执行 SQL 语句,返回PDOStatement对象,可以理解为结果集
$rows = $result->fetchAll(PDO::FETCH_ASSOC);//返回一个包含结果集中所有行的数组
$count = count($rows);//使用count()方法取得总数

//最后搞到data就大功告成了
$resultCur = $PDO->query($sqlCur);
$rowsCur = $result->fetchAll(PDO::FETCH_ASSOC);//数据部分就是这个啦,只不过要转换成json
//就是下面这样子处理
 $json_rowsCur = json_encode($rowsCur);

//最最最后,拼接返回数据data

$data = "{
          "code": 0,
          "msg": "",
          "count": $count,
          "data": $json_rowsCur
		}";

//还有呢
echo $data;

特别提醒,代码仅供自己备忘的记录,需要的小伙伴不要照抄哦,代码只是参考,不用完全跟这写法一样!

在这里插入图片描述

  • 5
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
实现layui数据表格分页功能,需要结合PHP后端来进行处理。 首先,我们需要在PHP中获取到要展示的数据,并将其按照layui数据表格的要求进行格式化。可以使用数据库查询语句或者其他方式获取数据,然后将数据转换成JSON格式。 接下来,在HTML页面中引入layui的插件和样式表。在数据表格的设置项中,我们需要设置表格的列数、列名和数据接口等。 在PHP中,我们需要根据前端传递的参数,来确定当前请求的是第几页的数据。可以使用$_GET或$_POST来获取前端传递的参数,并进行相应的处理。根据当前页码和每页显示数据条数,计算出开始查询的位置和查询的数据数量。 我们可以使用PHP的分页查询语句,例如LIMIT来实现分页功能。在查询数据的SQL语句中,添加LIMIT关键字,并将开始位置和数量作为参数传入。这样就可以获取到当前页的数据。 然后,将查询到的数据按照layui数据表格要求进行格式化,并返回给前端页面。 在前端页面中,layui会自动根据返回的数据进行渲染和分页展示。我们只需要在数据表格的设置项中,设置一页显示数据条数和总数据条数。 总之,实现layui数据表格分页功能需要通过PHP后端来进行数据查询和分页处理,并将处理好的数据返回给前端页面。在前端页面中,通过引入layui的插件和设置相应的参数,即可实现分页展示。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值