在使用extjs创建带分页功能的 grid 如下:

1.创建一个模型

        //  创建算定义模型 模型名称 User
Ext.define('User', {
extend: 'Ext.data.Model',
fields: ['name', 'email', 'phone', 'birthDate'] // 加载指定的数据字段
});

2. 创建store 来存储模型,其中 myPageSize 是默认的页面初始大小,设定为 10

// 创建 store
var userStore = Ext.create('Ext.data.Store', {
model: 'User', // 使用自定义模型
//fields: ['name', 'email', 'phone','birthDate'], // 添加此字段时,可删除 model 字段
autoLoad: false,
//id:'UserStoreID',
pageSize: myPageSize,
proxy: {   // proxy 字段从后台获取数据
type: 'ajax',
url: '/home/GetData',
reader: {
type: 'json',
root: 'data',
totalProperty: 'totalCount',
}
}
});

3. 创建分页控件方法一:

            /* 在grid 底部添加分页控件,将组件添加到该面板中的组件或一系列组件。所停靠的项目可以停靠在面板的顶部、右边、左边或底部。这通常是用于像工具栏和标签栏: */
dockedItems: [   
      {
xtype: 'pagingtoolbar',
store: userStore, //和 GridPanel 使用的 store 是相同的
dock: 'bottom',
displayInfo: true,
displayMsg: '显示第{0}条数据到{1}条数据,一共有{2}条',
emptyMsg: "没有记录"
}
]

 分页控件方法二:

 

   bbar: new Ext.PagingToolbar({       //定义翻页控件
pageSize:myPageSize, // 参数1:每页显示数
store: userStore, // 数据源---非常重要
displayInfo:true,
displayMsg:'显示第{0}条数据到{1}条数据,一共有{2}条',
emptyMsg:'没有记录'
}),

在后台接收的方法具体代码如下(以下是 C# mvc 控制器代码)

 public JSONHelper GetData()
{ List<Users> myList = new List<Users>();
JSONHelper json = new JSONHelper();
json.success = true;
json.totlalCount = 50;
int num = 10;  // 模拟生产记录数 // post 请求
//var pageSize = Request.Form["start"];
//var pageIndex = Request.Form["limit"]; // get 请求获取 前端发送到服务器的 页面号,页面大小
var pageIndex = Request.Params["start"]; // 当前请求页面号
var pageSize = Request.Params["limit"]; // 页面大小 // 读取数据
var model = userService.GetData(pageIndex, pageSize, null);
if (model != null)
{
foreach(var m in model)
{
json.AddItem("name", m.Name);
json.AddItem("phone", m.Phone);
json.AddItem("email", m.Email);
json.AddItem("birthDate", m.BirthDate);
json.ItemOk();
}
}
return json;
}

注意: 后台返回的格式一定是 json 格式,返回的 json 格式如下:

var userData = {
"success": true,
"totalCount": 12,
"users": [
{ "name": "Lisa", "email": "aa@aa.com", "phone": "111111111",birthdate:'1991-02-01' },
{ "name": "Bart", "email": "bb@bb.com", "phone": "222222",birthdate:'1991-02-02' },
]
};

extjs grid 分页的更多相关文章

  1. Extjs grid分页多选记忆功能

    很多同事在用extjs grid做分页的时候,往往会想用grid的多选功能来实现导出Excel之类的功能(也就是所谓的多选记忆功能),但在选选择下一页的时候 上一页选中的已经清除 这是因为做分页的时候 ...

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

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

  3. ExtJS入门教程06,grid分页的实现

    前面两篇内容分别介绍了extjs grid的基本用法和extjs grid异步加载数据,这篇文章将介绍extjs grid的分页. 数据量大的时候我们必须用到分页,结合上一篇的异步加载数据,今天我们就 ...

  4. ExtJS实现分页grid paging

    背景 分页查询在Web页面中比例很大,我自己也写过分页框架,也用过很多第三方分页. 基于jquery的dataTables,那么多例子.清晰API.应用广泛.开源,即使是新手也可以很快上手. ExtJ ...

  5. extjs grid renderer用法

    extjs grid renderer用法 摘自:http://www.cnblogs.com/ljian/archive/2011/10/27/2226959.html var cm = new E ...

  6. ExtJs4 SpringMvc3 实现Grid 分页

    新建一个Maven webapp项目,webxml以及spring配置没什么需要注意的,不再赘述. Maven依赖:(个人习惯,有用没用的都加上...) <project xmlns=" ...

  7. Javascript - ExtJs - 组件 - 分页

    服务端只需要返回如下格式的字符串,ExtJs就可以解析并自动生成分页数据.  , name: "sam" }     ] } 准备: CREATE PROCEDURE [dbo]. ...

  8. 72. js EXTJS grid renderer用法

    转自:https://blog.csdn.net/shancunxiaoyazhi/article/details/22156083 renderer : Function (可选的)该函数用于加工单 ...

  9. ExtJS Grid导出excel文件

    ExtJS Grid导出excel文件, 需下载POI:链接:http://pan.baidu.com/s/1i3lkPhF 密码:rqbg 1.将Grid表格数据连同表格列名传到后台 2.后台导出e ...

随机推荐

  1. 【原】sql 将某列拼成一个字符串

    SQL Server中,写存储过程,时常会碰到这样一个需求:从某个表中取某一列,然后需要将这一列数据以某种形式拼成一个字符串,以供后面使用,下面这种方法能够实现此需求. --取说明书模块枚举,结果格式 ...

  2. Codeforces Round #365 (Div. 2) Mishka and trip

    Mishka and trip 题意: 有n个城市,第i个城市与第i+1个城市相连,他们边的权值等于i的美丽度*i+1的美丽度,有k个首都城市,一个首都城市与每个城市都相连,求所有边的权值. 题解: ...

  3. POJ 3368 Frequent values RMQ 训练指南 好题

    #include<cstdio> #include<cstring> ; const int inf=0x3f3f3f3f; inline int max(int x,int ...

  4. Shell 重定向 &>file,2>&1,1>&2 的区别

    Shell上:0表示标准输入1表示标准输出2表示标准错误输出> 默认为标准输出重定向,与1>相同2>&1 意思是 把标准错误输出重定向到标准输出1>&2 意思是 ...

  5. 程序员的sql金典

    1.数据库基础概念 2.数据类型 3.通过SQL语句管理数据表 4.数据的增删改 5.Select的基本用法 6.高级数据过滤 7.数据分组 8.限制结果集行数和抑制重复数据 9.计算字段 10.不从 ...

  6. 转--Android中调用webservice的工具类

    最近学习WebService,感觉利用这个借口开发网站的Android客户端方便及了,用到一个工具类,这里铭记一下. public static final String WebServiceName ...

  7. Mac下finder中无法关闭的小条

    就是这个恶心的小东西,根本无法关闭.其实就是在finder中无意中输入了中文导致的(不是按Alt+F , 就是打开finder然后输入中文) 可以通过继续输入中文然后按esc退出.也可以用下面的设置尽 ...

  8. Mac下的eclipse按住ctrl点击无法查看类文件

    问题主要是项目的.project或者.build文件有问题,github上check的另一个项目就没有这样的现象,可以新建一个项目,然后把新建项目的这两个文件一一替换无法ctrl点击的项目中的文件. ...

  9. 庭审全程文字实录 z

    备受关注的深圳快播公司涉黄案两日来在北京市海淀法院开庭审理,快播CEO王欣(微博).事业部总经理吴铭.事业部副总经理张克东.事业部副总经理兼市场部总监牛文举出庭接受审理. 面对传播淫秽物品牟利罪的指控 ...

  10. 利用mysql-proxy 代理无法迁移数据库

    一.什么是数据库迁移? 随着业务的增长或机器老化等原因,不可避免会碰到将数据库从一台机器迁移到另一台机器(集群)的问题.数据库迁移可分为冷迁(离线)和热迁(在线实时). 二.如何无缝迁移? 以旧库 1 ...