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中使用Oracle数据库(4)
Oct 09 PHP
PHP面向对象——访问修饰符介绍
Nov 08 PHP
php中导出数据到excel时数字变为科学计数的解决方法
Feb 03 PHP
wamp下修改mysql访问密码的解决方法
May 07 PHP
在Windows XP下安装Apache+MySQL+PHP环境
Feb 22 PHP
php获得客户端浏览器名称及版本的方法(基于ECShop函数)
Dec 23 PHP
详解HTTP Cookie状态管理机制
Jan 14 PHP
CodeIgniter自定义控制器MY_Controller用法分析
Jan 20 PHP
Netbeans 8.2与PHP相关的新特性介绍
Oct 08 PHP
微信公众号模板消息群发php代码示例
Dec 29 PHP
php写app用的框架整理
Sep 29 PHP
七种PHP开发环境搭建工具
Jun 28 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
收音机另类DIY - 纸巾盒做外壳
2021/03/02 无线电
新版mysql+apache+php Linux安装指南
2006/10/09 PHP
php提交表单时判断 if($_POST[submit])与 if(isset($_POST[submit])) 的区别
2011/02/08 PHP
php修改NetBeans默认字体的大小
2013/07/02 PHP
windows下配置apache+php+mysql时出现问题的处理方法
2014/06/20 PHP
PHP中mysql_field_type()函数用法
2014/11/24 PHP
php将textarea数据提交到mysql出现很多空格的解决方法
2014/12/19 PHP
symfony表单与页面实现技巧
2015/01/26 PHP
PHP中__autoload和Smarty冲突的简单解决方法
2016/04/08 PHP
Laravle eloquent 多对多模型关联实例详解
2017/11/22 PHP
js常见表单应用技巧
2008/01/09 Javascript
JavaScript 设计模式学习 Factory
2009/07/29 Javascript
非常棒的10款jQuery 幻灯片插件
2011/06/14 Javascript
基于jquery的不规则矩形的排列实现代码
2012/04/16 Javascript
基于jQuery的图片左右无缝滚动插件
2012/05/23 Javascript
jQuery实现可编辑表格并生成json结果(实例代码)
2017/07/19 jQuery
微信小程序实现折叠与展开文章功能
2018/06/12 Javascript
vue项目中运用webpack动态配置打包多种环境域名的方法
2019/06/24 Javascript
详解Vuex下Store的模块化拆分实践
2019/07/31 Javascript
vue使用i18n实现国际化的方法详解
2019/09/05 Javascript
解决layui批量传值到后台操作时出现传值为空的问题
2019/09/28 Javascript
Node.js开发之套接字(socket)编程入门示例
2019/11/05 Javascript
vue中利用iscroll.js解决pc端滚动问题
2020/02/15 Javascript
JavaScript运行机制实例分析
2020/04/11 Javascript
在Django的URLconf中使用多个视图前缀的方法
2015/07/18 Python
Python常见字符串操作函数小结【split()、join()、strip()】
2018/02/02 Python
Python在groupby分组后提取指定位置记录方法
2018/04/20 Python
将string类型的数据类型转换为spark rdd时报错的解决方法
2019/02/18 Python
python提取log文件内容并画出图表
2019/07/08 Python
python通过opencv实现图片裁剪原理解析
2020/01/19 Python
python函数定义和调用过程详解
2020/02/09 Python
python 最简单的实现适配器设计模式的示例
2020/06/30 Python
简述synchronized和java.util.concurrent.locks.Lock的异同
2014/12/08 面试题
协议书范文
2015/01/27 职场文书
社团招新宣传语
2015/07/13 职场文书
MySQL数据库查询之多表查询总结
2022/08/05 MySQL