thinkPHP5框架实现基于ajax的分页功能示例


Posted in PHP onJune 12, 2018

本文实例讲述了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="{$casedetails.pic}"/>
  <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框架的PHP程序设计有所帮助。

PHP 相关文章推荐
PHP初学者头疼问题总结
Oct 09 PHP
PHP_MySQL教程-第一天
Mar 18 PHP
支持中文的php加密解密类代码
Nov 27 PHP
php目录操作实例代码
Feb 21 PHP
php警告Creating default object from empty value 问题的解决方法
Apr 02 PHP
php实现数组筛选奇数和偶数示例
Apr 11 PHP
php获取YouTube视频信息的方法
Feb 11 PHP
PHP将session信息存储到数据库的类实例
Mar 04 PHP
[原创]php获取数组中键值最大数组项的索引值
Mar 17 PHP
php自动加载方式集合
Apr 04 PHP
php判断手机浏览还是web浏览,并执行相应的动作简单实例
Jul 28 PHP
TP5框架实现上传多张图片的方法分析
Mar 29 PHP
Laravel框架路由和控制器的绑定操作方法
Jun 12 #PHP
Laravel框架路由设置与使用示例
Jun 12 #PHP
Laravel框架生命周期与原理分析
Jun 12 #PHP
Laravel框架分页实现方法分析
Jun 12 #PHP
php 可变函数使用小结
Jun 12 #PHP
PHP程序员学习使用Swoole的理由
Jun 24 #PHP
PHP实现的装箱算法示例
Jun 23 #PHP
You might like
php csv操作类代码
2009/12/14 PHP
PHP正则验证Email的方法
2015/06/15 PHP
Yii快速入门经典教程
2015/12/28 PHP
php轻松实现文件上传功能
2016/03/03 PHP
php metaphone()函数及php localeconv() 函数实例解析
2016/05/15 PHP
range 标准化之获取
2011/08/28 Javascript
JQuery EasyUI 数字格式化处理示例
2014/05/05 Javascript
深入理解JavaScript系列(43):设计模式之状态模式详解
2015/03/04 Javascript
微信小程序左滑删除效果的实现代码
2017/02/20 Javascript
详解webpack介绍&amp;安装&amp;常用命令
2017/06/29 Javascript
详解webpack性能优化——DLL
2017/10/20 Javascript
简易Vue评论框架的实现(父组件的实现)
2018/01/08 Javascript
微信小程序如何像vue一样在动态绑定类名
2018/04/17 Javascript
微信小程序实现电影App导航和轮播
2020/11/30 Javascript
使用python实现baidu hi自动登录的代码
2013/02/10 Python
Python使用回溯法子集树模板解决爬楼梯问题示例
2017/09/08 Python
python爬虫系列Selenium定向爬取虎扑篮球图片详解
2017/11/15 Python
Python Tkinter实现简易计算器功能
2018/01/30 Python
解决Python3.5+OpenCV3.2读取图像的问题
2018/12/05 Python
pyqt5实现按钮添加背景图片以及背景图片的切换方法
2019/06/13 Python
springboot配置文件抽离 git管理统 配置中心详解
2019/09/02 Python
tensorflow多维张量计算实例
2020/02/11 Python
python FTP编程基础入门
2021/02/27 Python
德尔福集团DELPHI的笔试题
2012/02/22 面试题
商务考察邀请函范文
2014/01/21 职场文书
30岁生日感言
2014/01/25 职场文书
语文课外活动总结
2014/08/27 职场文书
大学生违纪检讨书300字
2014/10/25 职场文书
研究生给导师的自荐信
2015/03/06 职场文书
2015年大学生工作总结
2015/04/21 职场文书
信用卡工作证明范本
2015/06/19 职场文书
《小摄影师》教学反思
2016/02/18 职场文书
小学一年级语文教学反思
2016/03/03 职场文书
详解Apache SkyWalking 告警配置指南
2021/04/22 Servers
Nginx实现会话保持的两种方式
2022/03/18 Servers
Linux中各个目录的作用与内容
2022/06/28 Servers