使用Layui实现表格数据的分页功能

最近在用Layui做表格数据的展示时想把所有的数据进行分页展示,于是在网上找了一个模板

html 复制代码
<script type="text/javascript" >
layui.use(['table','layer','form','laypage'], function(){
  var table = layui.table,
  layer = layui.layer,
  form = layui.form,
  laypage = layui.laypage;

  table.render({
	 id:"provinceReload"
	,elem: '#complainTable'
    ,url:'/detection_result_return'
    ,page: true
    ,method:'get'
    ,toolbar: '#complain_toolbar'
    ,limit:10
    ,cols: [
    			[
    			   {checkbox:true}//开启多选框
			      ,{field:'id', width:150,title: 'ID'}
			      ,{field:'serviceCode',width:150, title: '服务编号'}
			      ,{field:'Order',width:150, title: '订单号'}
			      ,{field:'Reason',width:150,title: '原因'}
			      ,{field:'Detail',width:150, title: '详情'}
			      ,{field:'plainState', width:150, title: '状态'}
			      ,{fixed: 'right', title:'操作', toolbar: '#barDemo'}
    			]
    	   ]
    ,limits: [5,10,20,50]
  });

});
</script>

注意要将你的url换为你自己的后端接口地址。

过程中遇到了一下问题,解决办法可以参考我的另一篇博客使用layui做表单数据展示时遇到的问题包括layui is not defined,请求异常,错误提示:parsererror,只有表头可以显示出来数据却显示不出-CSDN博客将数据展示出来后却发现并没有分页展示,而是将所有数据都在一页上进行了展示,于是我去了Layui官网寻找原因,我发现模板中Layui分页功能打开了,前端中按钮也已经出现但是点击按钮却没反应,

于是我上网查了才知道分页功能需要自己写代码实现该需求,我们可以按F12键或者右键检查,找到Network,可以发现当我们点击按钮的第几页时,他会向我们设置的后端接口发送一个ajax请求,

其中包括page(第几页)参数以及limit(一页展示几条数据)参数,因此我们可以根据请求中的参数返回该页需要展示的数据。

python 复制代码
data_len = len(show_data)
    # 获取分页参数
    page = request.args.get('page')
    limit = request.args.get('limit')
    # 分页
    page = int(page)
    limit = int(limit)
    start = (page - 1) * limit
    end = page * limit
    show_data = show_data[start:end]
    # print(show_data)
    response_data = {
        'code': 0,
        'msg': "",
        'count': data_len,
        'data': show_data
    }
    return jsonify(response_data)
相关推荐
十步杀一人_千里不留行32 分钟前
Google 登录集成教程(Web + Expo 移动端)
前端
gAlAxy...3 小时前
IntelliJ IDEA 四种项目构建:从普通 Java 到 Maven Web 项目
前端·firefox
my一阁3 小时前
2025-web集群-问题总结
前端·arm开发·数据库·nginx·负载均衡·web
会飞的小妖4 小时前
个人博客系统(十一、前端-简短的配置)
前端
念念不忘 必有回响5 小时前
nginx前端部署与Vite环境变量配置指南
前端·nginx·vite
JIngJaneIL5 小时前
篮球论坛|基于SprinBoot+vue的篮球论坛系统(源码+数据库+文档)
java·前端·数据库·vue.js·论文·毕设·篮球论坛系统
程序猿阿伟7 小时前
《首屏加载优化手册:Vue3+Element Plus项目提速的技术细节》
前端·javascript·vue.js
尘觉7 小时前
面试-浅复制和深复制?怎样实现深复制详细解答
javascript·面试·职场和发展
fruge8 小时前
Vue Pinia 状态管理实战指南
前端·vue.js·ubuntu
sean9 小时前
开发一个自己的 claude code
前端·后端·ai编程