thinkPHP5框架实现基于ajax的分页功能示例 本文实例讲述了thinkPHP5框架实现基于ajax的分页功能。分享给大家供大家参考,具体如下: 最近一个页面的选项卡又牵扯到ajax分页,所以研究了一下tp5的ajax分页使用方法 首先看一下tp5的分页功能介绍 参数 描述 list_rows 每页数量 page 当前页 path url路径 query url额外参数 fragment url锚点 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"}
  • {$casedetails.name}

    {$casedetails.caseCategory.name}

    VIEW MORE
  • {/volist}
    {$res->render()} 更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。 希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。