layui 分页问题

用layui做分页你会发现少了很多html和js代码,只要在table渲染代码块把page设置成true就行。

 不过这里也有个小问题。当你表头有搜索框的时候,你会发现在不同页搜索,在后台获取page的值是对应页的,而不会是page=1。

 如果当你查询的内容  “<” pageSize * (page-1) 时,那么当前页是没有数据的,这显然是不合理的,所有就需要把前台传过去的 page 处理一下。我粗略的写了个 page 工具类:

public class PageUtil {

    public static Integer getPage(Integer page, Integer pageSize, Integer count) {
        // 商数 判断条件需用
        int quotient = count / pageSize;    // count:根据条件从数据库获取的条数
        // 余数 判断条件需用
        int remainder = count % pageSize;
        int total = page * pageSize;
        if (total >= count) {
            if (quotient <= 0) {      // 根据条件获取的数据不足一页
                page = 1;
            } else {
                if (remainder > 0) { // 根据条件获取的数据 > n*pageSize 余数为 remainder
                    page = quotient + 1;
                } else page = quotient;// 根据条件获取的数据 = n*pageSize 余数为零
            }
        }
        return page;
    }
}

效果如下:

点击搜索按钮

 可以看到传到后台page值为 5 ,经过 PageUtil 处理后结果显示正常!


版权声明:本文为shunyache3481原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。