kavo

thinkphp5 ajax分页

最近一个页面的选项卡又牵扯到ajax分页,所以研究了一下tp5的ajax分页使用方法

首先看一下tp5的分页功能介绍

参数描述
list_rows每页数量
page当前页
pathurl路径
queryurl额外参数
fragmenturl锚点
var_page分页变量
type分页类名

$caseDetails = CaseDetails::where(['status'=>1])->paginate(9,false,['path'=>'javascript:AjaxPage([PAGE]);']);
所以我们分页查询写成上面代码所示。

这样页面显示每个分页上面变成了AjaxPage('当前分页数,自动变化‘)

然后我们就可以在页面中写一个对应的函数AjaxPage(page),来完成对应的ajax请求查询,在返回到指定的视图中

ajax请求控制器方法如下

public function all()
    {
        $caseDetails = CaseDetails::where(['status'=>1])->paginate(9,false,['path'=>'javascript:AjaxPage([PAGE]);']);
        return view('getall',['res'=>$caseDetails]);
    }


如果选项卡带ID再次查询对应当前分类,可以使用如下

public function getAjax($id,$page=1)
    {
        $res = CaseDetails::where(['category'=>$id])->paginate(9,false,['page'=>$page,'path'=>"javascript:AjaxDetailsPage({$id},[PAGE]);"]);
        return view('',['res'=>$res]);
    }


js代码如下:

    function AjaxPage(page){
        $.get('/index/successcase/getAll',{ page:page },function (data) {
            $('.little-content').html(data);
        })
    }

    $('.on').hover(function(){
        $.get('/index/successcase/all',function (data) {
            $('.little-content').html(data);
        })
    });

    $('.title-id').hover(function(){
        var id = $(this).attr('title');
        $.get('/index/successcase/getajax',{ 'id':id },function(data){
            $('.little-content').html(data);
        });
    });

    function AjaxDetailsPage(id,page){
        $.get('/index/successcase/getAjax',{ id:id,page:page },function (data) {
            $('.little-content').html(data);
        })
    }

ajax作用范围视图

{volist name="res" id="casedetails"}
<li class="little-block">
    <img src="{$casedetails.pic}"/>
    <div class="mb-text">
        <div class="text">
            <h1>{$casedetails.name}</h1>
            <p class="p3">{$casedetails.caseCategory.name}</p>
            <a href="#">VIEW MORE</a>
        </div>
    </div>
</li>
{/volist}
<br>
{$res->render()}



posted on   下雨天唱情歌  阅读(14)  评论(0编辑  收藏  举报  

编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示