这篇文章主要介绍了thinkPHP5框架实现基于ajax的分页功能,结合实例形式分析了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"}
<li class="little-block">
<img src="eyRjYXNlZGV0YWlscy5waWN9"/>
<div class="mb-text">
<div class="text">
<h1>{$casedetails.name}</h1>
<p class="p3">{$casedetails.caseCategory.name}</p>
<a href="#" rel="external nofollow" >VIEW MORE</a>
</div>
</div>
</li>
{/volist}
<br>
{$res->render()}
更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。
希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。
本文标题为:thinkPHP5框架实现基于ajax的分页功能示例
- laravel实现按月或天或小时统计mysql数据的方法 2023-02-22
- laravel通用化的CURD的实现 2023-03-17
- PHP仿tp实现mvc框架基本设计思路与实现方法分析 2022-10-18
- PHP实现微信支付(jsapi支付)流程步骤详解 2022-10-09
- Laravel balde模板文件中判断数据为空方法 2023-08-30
- PHP中PDO事务处理操作示例 2022-10-15
- php微信公众号开发之秒杀 2022-11-23
- PHP简单实现二维数组的矩阵转置操作示例 2022-10-02
- 用nohup命令实现PHP的多进程 2023-09-02
- windows下9款一键快速搭建PHP本地运行环境的好工具(含php7.0环境) 2023-09-02