要想使用Yii分页类

第一步:在控制器层加载分页类

use yii\data\Pagination;

第二步: 使用model层查询数据,并用分分页,限制每页的显示条数

$data = Zhao::find();  //zhao为model层,在控制器刚开始use了field这个model,这儿可以直接写Field,开头大小写都可以,为了规范,我写的是大写

$pages = new Pagination(['totalCount' =>$data->count(), 'pageSize' => '3']);    //实例化分页类,带上参数(总条数,每页显示条数)

$model=$data->offset($pages->offset)->limit($pages->limit)

->all();

第三步:向视图层传送数据

return $this->render('show',[

'pages' => $pages,

]);

传送数据的时候,用render函数,否则过去视图层没有样式

第四步:

在视图层顶层写上

<?php

use yii\helpers\Html;

use yii\widgets\ActiveForm;

use yii\widgets\LinkPager;

use yii\helpers\Url;

?>

在显示数据底部

<?=

LinkPager::widget([

'pagination' => $pages,

]);

?>

效果:

Yii框架里面的ajax分页,其实很简单,

只需在

<?=

LinkPager::widget([

'pagination' => $pages,

]);

?>

后面加上下面这段代码:

<?php $this->beginBlock('abc'); ?>

$(document).on('click','.pagination a',function(e){

e.preventDefault();

var url=$(this).attr('href');

$.get(url,function(msg){

//alert(msg);

$('#lists').html(msg);

});

});

<?php $this->endBlock();  $this->registerJs($this->blocks['abc'], View::POS_END); ?>

另外在视图层顶部加上这一句话

use yii\web\View;

在控制器层做一下判断,改变样式:

if(Yii::$app->request->isAjax)
       {
             return $this->renderPartial('list',[
                'model' => $model,
                'pages' => $pages,
                'arr'=>$arr,

]);
       }
       else
       {
            return $this->render('list',[
                'model' => $model,
                'pages' => $pages,
                'arr'=>$arr,

]);
       }

最后的效果和上面的效果是一样的!

php--yii框架中的ajax分页与yii框架自带的分页的更多相关文章

  1. 牛客网Java刷题知识点之Java 集合框架的构成、集合框架中的迭代器Iterator、集合框架中的集合接口Collection(List和Set)、集合框架中的Map集合

    不多说,直接上干货! 集合框架中包含了大量集合接口.这些接口的实现类和操作它们的算法. 集合容器因为内部的数据结构不同,有多种具体容器. 不断的向上抽取,就形成了集合框架. Map是一次添加一对元素. ...

  2. tp5框架中jquery+ajax分页

    jaxa分页,点击按钮直接替换数据, //php代码$page=Request::instance()->param("page"); $page = empty($page ...

  3. 在laravel框架中使用ajax请求报错419

    laravel框架中报419 419 unknown status 这个时候你需要将这个接口放到api路由上,这样可以跳过CSRF的检查

  4. ssh框架中spring整合hibernate的配置文件模板(带详细注释)

    applicationContext.xml的配置文件模板 <?xml version="1.0" encoding="UTF-8"?> <b ...

  5. Scrapy爬虫框架中的两个流程

    下面对比了Scrapy爬虫框架中的两个流程—— ① Scrapy框架的基本运作流程:② Spider或其子类的几个方法的执行流程. 这两个流程是互相联系的,可对比学习. 1 ● Scrapy框架的基本 ...

  6. Yii框架学习笔记(二)将html前端模板整合到框架中

    选择Yii 2.0版本框架的7个理由 http://blog.chedushi.com/archives/8988 刚接触Yii谈一下对Yii框架的看法和感受 http://bbs.csdn.net/ ...

  7. Yii 框架中安装 memcache 及配置和测试

    安装php_memcache.dll扩展 1.首先将php_memcache.dll文件放入E:\server\php\ext目录下 (php_memcache.dll下载地址:http://wind ...

  8. Yii框架中集成phprpc、hprose

    在项目开发的过程中有时候会涉及到对外提供接口供第三方程序调用或者是不同程序间需要相互通信,那么最通用的做法是用传统的SOAP方式来实现,用XML的文档格式来作为传输载体.但是这种方式不灵活,支持的数据 ...

  9. 使用Yii框架中遇到的三个问题

    以下由我们在信易网络公司开发项目的时候终结出的一些经验 使用Yii框架中遇到的三个问题 1.main.php文件中欲引入全局变量的问题 还原一下此问题:在Yii框架中,main.php一般会作为整个应 ...

随机推荐

  1. HDU3657 Game(最小割)

    题目大概说,给一个n×m的格子,每个格子都有数字,选择一个格子就能加上格子数字的分数,有k个格子必须选择,如果两个相邻的格子都被选择了那分数要减去两个格子数字的与再乘2.问能取得的最大分数. 已经知道 ...

  2. 数据库操作sql【转】

    Student(S#,Sname,Sage,Ssex) 学生表Course(C#,Cname,T#) 课程表SC(S#,C#,score) 成绩表Teacher(T#,Tname) 教师表 问题:1. ...

  3. object-c cocos2d-x 写程序时注意调试的技巧

    (1)写程序时最好在类的init函数中显示类名,表明现在在执行哪个类,样例代码 CCLOG(@"cocos2d: Using Director Type:%@", [self cl ...

  4. 最大权闭合图 && 【BZOJ】1497: [NOI2006]最大获利

    http://www.lydsy.com/JudgeOnline/problem.php?id=1497 最大权闭合图详细请看胡伯涛论文<最小割模型在信息学竞赛中的应用>,我在这里截图它的 ...

  5. SVN组成中trunk,branches and tags功能用法详解

    SVN组成中trunk,branches and tags功能用法详解  我相信初学开发在SVN作为版本管理时,都估计没可能考虑到如何灵活的运用SVN来管理开发代码的版本,下面我就摘录一篇文章来简单说 ...

  6. Reprojection Matrix Q

    Given the disparity d and 2D point (x, y) , we can derive the 3D depth using the 4-by-4 reprojection ...

  7. FlyCapture2 VS2010 Configuration

    Add in the system Path: C:\Program Files (x86)\Point Grey Research\FlyCapture2\bin Project->Proje ...

  8. php 配置正确的时间

    关于php时区时间错误问题 date 当前时间 时差 当地 本地date_default_timezone_set 之前有一个遗留问题,就是echo date("y-m-d h:i:s&qu ...

  9. 【翻译】CEDEC2013 BANDAI NAMCO 了解游戏格斗动画中的身体运动结构和原理

    CEDEC搬运工程开始~   这篇会议PPT的作者 元梅幸司曾经就职在TECMO参与开发了死或生2,3[ DEAD OR ALIVE],忍龙「NINJA GAIDEN」后来加入NAMCO(现在是BAN ...

  10. window下mysql的1053错误

    tmp文件数目过多 导致启动为1053错误 这个时候有两种方法 清空tmp目录 更改mysql的tmp目录 在my.ini中更改 [mysqld] tmpdir="d:/mysql_tmp& ...