weixin_58648225 2021-06-16 14:32 采纳率: 89.2%
浏览 75
已采纳

分页获取最后一页和第一页 并无效或隐藏"前一页"与"后一页"问题

  近来在着手前端与后台联系的问题,感谢各路大神的回复与解答。

 

分页部分:

<div class="box-footer clearfix">
    <ul class="pagination pagination-sm no-margin pull-right">
        <li><a href="{{ $data->withQueryString()->previousPageUrl() }}"><</a></li>
        @for ($p = 1; $p <= ceil($data->total() / $data->perpage()); $p++)
            <li><a href="{{ $data->withQueryString()->url($p) }}">{{ $p }}</a></li>
        @endfor
        <li><a href="{{ $data->withQueryString()->nextPageUrl() }}">></a></li>
    </ul>
</div>

目前页面的显示是这样的.

想法是js入手

function ensure_page(){
    var current_url = window.location.href();


if (var current_url !== http://localhost:8000/student/student_index or $current_url !== http://localhost:8000/student/student_index?page=1

的时候, 隐藏或使"前一页无效

然后最后一页的时候与数据库中的数据量做数学公式得到。

 

不过在过程中依然存在许多问题,所以想请教老师们具体的一个实现方法,初学参考学习谢谢~!

 

}

  • 写回答

3条回答 默认 最新

  • CSDN专家-showbo 2021-06-16 14:41
    关注

      你的分页操作是会刷新页面附带page参数还是ajax无刷新加载?是的刷新页面附带page参数的话执行下面的js就能实现你需要的功能(需要导入jquery框架,如果已经有jquery框架,去掉给出的代码里面的jquery script)

    <div class="box-footer clearfix">
        <ul class="pagination pagination-sm no-margin pull-right">
            <li><a href="{{ $data->withQueryString()->previousPageUrl() }}"><</a></li>
            @for ($p = 1; $p <= ceil($data->total() / $data->perpage()); $p++)
            <li><a href="{{ $data->withQueryString()->url($p) }}">{{ $p }}</a></li>
            @endfor
            <li><a href="{{ $data->withQueryString()->nextPageUrl() }}">></a></li>
        </ul>
    </div>
    <script src="https://g.csdnimg.cn/??lib/jquery/1.12.4/jquery.min.js"></script>
    <script>
        $(function () {
            var lis = $('.pagination-sm li'), totalpage = lis.length - 2;//总页数,减去第一和最后一个li
            //获取page参数值
            var page = /[\?&]page=(\d+)/i.exec(location.search);
            if (page) page = page[1];
            else page = 1;
            console.log(page)
            if (page <= 1) lis.eq(0).hide();//第一页隐藏上一页
            if (page >= totalpage) lis.last().hide();//最后一页隐藏下一页
        });
    </script>
    
     
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?