thinkphp5 ajax分页

2017-12-25 21:17:37来源:CSDN作者:myarche人点击

分享

最近一个页面的选项卡又牵扯到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()}



相关文章

    无相关信息

最新文章

123

最新摄影

闪念基因

微信扫一扫

第七城市微信公众平台