• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    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="{$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相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。

    希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

    您可能感兴趣的文章:
    • ThinkPHP5.1+Ajax实现的无刷新分页功能示例
    • thinkphp5框架前后端分离项目实现分页功能的方法分析
    • thinkphp5+layui实现的分页样式示例
    • ThinkPHP5&5.1框架关联模型分页操作示例
    • thinkPHP5框架分页样式类完整示例
    • thinkPHP5分页功能实现方法分析
    • ThinkPHP5分页paginate代码实例解析
    上一篇:Laravel框架路由和控制器的绑定操作方法
    下一篇:thinkPHP5框架auth权限控制类与用法示例
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

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