刷新Layui数据表格的当前页(刷新后仍是当前页,不是表格的第一页)

一. 问题背景

后台:SpringBoot
前端:Layui

情况:自定义一个刷新按钮,点击后,使得表格刷新仍留在当前页

参考自:Layui官方文档的数据表格重载

二. 解决方案

首先效果:
刷新前:
在这里插入图片描述

刷新后:

在这里插入图片描述

这里只给出一种解决方案,由于渲染数据表格的方式不同,解决方案都会略有不同,但是都是大同小异,最关键的部分是不变的。

这里给出的解决方案是只重载数据,没有实现条件搜索的重载,也是大同小异,看懂下面的关键代码就可以去Layui官方文档的数据表格重载学习如何实现条件搜索的重载。

最最最关键的代码,注意代码中的注释,如下:

//监听“刷新”按钮
$("#refresh").on('click', function(){
      //只重载数据,不实现条件搜索的重载
     table.reload('demoId', {//demoId是table.render()中id属性的值,如果没有设置,
                             //layui2.2.x版本之后默认自动设置为<table>中的id属性值
         url: '/user/getPage'//这是发送给controller的请求来获取数据,
                             //一般只需设为和table.render()中的url属性值即可
         ,page: {
             curr: currPage,//currPage是全局变量,后面会给出它在哪里定义以及赋值
         }
     });
 });

定义currPage以及将当前页码赋值它,注意代码中的注释,如下:

<script>
layui.use(['table', 'treetable', 'jquery', 'form'], function () {
			 var table = layui.table;
			 var currPage = 1;//首先默认值为1,防止出错
			 table.render({
			                ...
			                ,id: 'demoId'
			                ,url: '/user/getPage' //数据接口
			                ...
			                ,done: function(res, curr, count){
			                    //如果是异步请求数据方式,res即为你接口返回的信息。
			                    /**
			                     *如果是直接赋值的方式,
			                     *res即为:{data: [], count: 99} 
			                     *data为当前页数据、count为数据总长度
			                     */
			                    console.log(res);
			    
			                    currPage = curr;//将当前页码赋值给全局变量currPage
			                    //得到当前页码
			                    console.log(curr);
			                   
			    
			                    //得到数据总量
			                    console.log(count);
			                }
			              });
         });
</script>

有问题的小伙伴可留言

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值