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. hibernate主键(generator)生成方式

    1) assigned 主键由外部程序负责生成,无需Hibernate参与. 2) hilo 通过hi/lo 算法实现的主键生成机制,需要额外的数据库表保存主键生成历史状态. 3) seqhilo 与 ...

  2. python编程基础——集合

    集合是是基本数据类型的一种集合类型. 作用:去重 属性:intersection.union.difference.issubset 实例: list_1=[1,2,3,4,3,5,2,6,1]lis ...

  3. ThinkPHP使用soapclient调用webservice接口

    1,开启 php.ini 这2个服务 12 extension=php_openssl.dllextension=php_soap.dll 以公共天气预报webservice为例,采用thinkPHP ...

  4. appium ios真机自动化环境搭建&运行(送源码)

    appium ios真机自动化环境搭建&运行(送源码) 原创: f i n  测试开发社区  6天前 Appium测试环境的搭建相对比较烦琐,不少初学者在此走过不少弯路 首先是熟悉Mac的使用 ...

  5. Java-Springboot-集成spring-security简单示例(Version-springboot-2-1-3-RELEASE

    使用Idea的Spring Initializr或者SpringBoot官网下载quickstart 添加依赖 1234 <dependency><groupId>org.sp ...

  6. LNMP环境搭建--Centos7

    LNMP环境搭建--Centos7 | 刘鹏--博客 盒子 盒子 博客 分类 搜索 文章目录 在Centos7环境安装LAMP环境,备忘哈哈. 准备 首先去官网下载php,nginx 编译安装php ...

  7. 有关PHP的可变函数

    事情的起因是这样子的,最近看到一道题,问的是 <?php $_POST['a']($_POST['b']);?> 这句代码有什么问题,答案很明显因为PHP的可变函数这个特性,导致了任意代码 ...

  8. 爬虫cookies详解

    cookies简介 cookie是什么? Cookie,有时也用其复数形式 Cookies,指某些网站为了辨别用户身份.进行 session 跟踪而储存在用户本地终端上的数据(通常经过加密).定义于 ...

  9. 93-time模块

    目录 time模块 一.time模块 1.1 时间戳 1.2 格式化时间 1.3 结构化时间 1.4 不同格式时间之间的转换 1.5 其它用法 time模块 一.time模块 import time ...

  10. 渗透之——MSF提权

    在WEB渗透中当我们拿到webshell了,我们可以试试用MSF(metasploit)来进行提权,在MSF里meterpreter很强大的! 我们先用msfvenom生成一个EXE的木马后门. ms ...