1. 定义变量,存储,每页显示多少条数据

var itemsPage = 25;

2.grid数据源

//列表源
var oStore = Ext.create('Ext.data.Store', {
fields: ["a","b","c","d"],
autoLoad: false,
pageSize: itemsPage,  //记录每页显示多少条数据,会作为url的参数传递
proxy: {
type: "ajax",
url: "...",
       extraParams:{}, //自定义url参数
reader: { type: 'json', root: "rows", totalProperty: 'total' }  //totalProperty: 总数据条数
}
});

注意:获取到的数据源,格式为{total:123,rows:[......]}

3. 每页显示的条数,设为可选 //每頁顯示的條數

//每頁顯示的條數
var pagesizeCombo = new Ext.form.ComboBox({
store: new Ext.data.SimpleStore({ fields: ['id', 'value'], data: [['25', 25], ['75', 75], ['100', 100], ['150', 150], ['200', 200], ['300', 300]] }),
mode: 'local',
displayField: 'id',
valueField: 'value',
width: 60,
editable: false,
listeners: {
render: function (comboBox) {
//使得下拉菜单的默认值是初始值
comboBox.setValue(comboBox.ownerCt.getStore().pageSize);
},
select: function (comboBox) {
var pSize = comboBox.getValue();
comboBox.ownerCt.getStore().pageSize = parseInt(pSize);
//存储改变后的,每页显示条数
itemsPage = parseInt(pSize);
//重置頁碼
Ext.getCmp(gridId).getStore().currentPage = 1;
//查詢加載數據
oStore.reload();
}
}
});

4. grid显示的分页信息,给grid添加属性bbar

bbar: [{
xtype: 'pagingtoolbar',
dock: 'bottom',
store: oStore,
displayInfo: true,
autoScroll: true,
beforePageText: "第",
afterPageText: "页 共 {0} 页",
displayMsg: "显示 {0} - {1}条,共 {2} 条"),
emptyMsg: "没有数据!"),
items: ['-', "每页", pagesizeCombo, "条"]
}]

5. 如果是每页固定显示数据条数,可省略步骤1和3,其它步骤中出现的 itemsPage 和 pagesizeCombo 可直接将用数字替换掉。

6.  数据重新加载(或按条件重新查询数据),可以给url重新设定参数

oStore.reload({ params: { page: 1,a2:"xxx" } }

7. 设置页码可以

Ext.getCmp(gridId).getStore().currentPage = 1;

 也可以在reload中设置参数 {page:1},也可以将页码设置成其他数字,看个人需求。

Ext.grid 分页的更多相关文章

  1. ext:grid分页,列宽度自动填满grid宽度

    var cm = new Ext.grid.ColumnModel([{      header : '编号',      dataIndex : 'id'     }, {      header ...

  2. Ext.grid.Panel表格分页存储过程

    /*首先需要引入两个Extjs插件类 Ext.ux.data.PagingMemoryProxy和Ext.ux.ProgressBarPager这两个类*/ /*下面是控制弹出窗体放大缩小时窗体居中的 ...

  3. 【extjs】 ext5 Ext.grid.Panel 分页,搜索

    带有分页,搜索的grid. <%@page language="java" contentType="text/html; charset=UTF-8" ...

  4. Ext.grid.Panel表格分页

    转载:http://www.cnblogs.com/libingql/archive/2012/04/22/2464994.html cshtml @{ Layout = null; } <!D ...

  5. [Extjs] Ext4 Ext.grid.Panel 分页实现(mybatis 分页插件-PageHelper 使用)

    先看图: 页面js代码: var userStore=Ext.create('Ext.data.Store', { storeId:'userStore', fields:['uname', 'ema ...

  6. Ext grid checkbox 分页 翻页 勾选 问题

    timeArray = new Array(); //临时数组变量 var timeStatusBar = new Ext.ux.StatusBar({ id: 'statusbar', defaul ...

  7. [转]ExtJS Grid 分页时保持选中的简单实现方法

    原文地址 :http://www.qeefee.com/article/ext-grid-keep-paging-selection ExtJS中经常要用到分页和选择,但是当选择遇到分页的时候,杯具就 ...

  8. ExtJS自制表格Grid分页条

    试过Grid自带的load和分页功能,没有成功,干脆就自己写了...... 主要是查询条件比较复杂...... 希望哪位大神能有更好的意见. Ext.define('MyApp.ux.Paginati ...

  9. 完善ext.grid.panel中的查询功能(紧接上一篇)

    今天的代码主要是实现,Ext.grid.panel中的查询,其实我也是一名extjs新手,开始想的实现方式是另外再创建一个新的grid类来存放查询出的数据(就是有几个分类查询就创建几个grid类),这 ...

随机推荐

  1. Nginx笔记总结十五:nginx+keepalive+proxy_cache配置高可用nginx集群和高速缓存

    nginx编译 wget http://labs.frickle.com/files/ngx_cache_purge-2.3.tar.gz ./configure --prefix=/usr/loca ...

  2. 在腾讯云centos7.2上安装配置Node.js记录

    应为爱好前端所以打算在腾讯云服务器上安装JavaScript引擎Node.js,下面是安装步骤: 安装准备: 下载node.js的.tar.xz安装包:https://nodejs.org/dist/ ...

  3. 腾讯玩O2O手机维修 巨头入局引市场大变

     巨头入局引市场大变" title="腾讯玩O2O手机维修 巨头入局引市场大变">     对于"游击队"或初创企业来说,最怕的就是巨头的杀入. ...

  4. iOS多线程开发之GCD(死锁篇)

    上篇和中篇讲解了什么是GCD,如何使用GCD,这篇文章将讲解使用GCD中将遇到的死锁问题.有兴趣的朋友可以回顾<iOS多线程开发之GCD(上篇)>和<iOS多线程开发之GCD(中篇) ...

  5. 谈谈从事IT测试行业的我,对于买房买车有什么样的感受

    周边测试同事,开发同事买?买?的比较多, 偶尔大家话题中也会谈起这个. 毕竟工作.衣.食.住.行和我们每个IT从业者息息相关, 大家有着相同或相似的感受与经验. - 前公司 以前公司测试经理 10年从 ...

  6. 添砖加瓦:Linux /proc目录简介

    Linux 内核提供了一种通过 /proc 文件系统,在运行时访问内核内部数据结构.改变内核设置的机制.proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间.它以文件系统的方式为访问系 ...

  7. 初识Spring JdbcTemplate

    JdbcTemplate 概述 JdbcTemplate是Spring提供的一个模板类,它是对jdbc的封装.用于支持持久层的操作.具有简单,方便等特点. pom.xml <!--依赖版本--& ...

  8. 使用thymeleaf模板实现博客评论的异步刷新

    使用thymeleaf模板实现博客评论的异步刷新 最简单的一个要求:用户可以在博客下面进行评论,然后评论后点击提交后直接上传到数据库,并且局部刷新 这是前端页面的展示,使用的semanticUI进行构 ...

  9. python 字典元组集合字符串

    s1 = ''hello, world!'' s2 = '\n\hello, world!\\n' print(s1, s2, end='') s1 = '\141\142\143\x61\x62\x ...

  10. 46-Python深浅拷贝

    目录 一.引言 1.1 可变或不可变 二.拷贝 三.浅拷贝 深拷贝 一.引言 在python中,对象赋值实际上是对象的引用.当创建一个对象,然后把它赋给另一个变量的时候,python并没有拷贝这个对象 ...