ExtJS分页问题?

事后诸葛亮 2009-11-13 04:15:58

Ext.onReady(function (){
var cm = new Ext.grid.ColumnModel([new Ext.grid.RowNumberer(),
{header:'序号',dataIndex:'id',sortable:true},
{header:'姓名',dataIndex:'name'},
{header:'Email',dataIndex:'email'},
{header:'性别',dataIndex:'sex',renderer:formatSex},
{header:'年龄',dataIndex:'age'}]);
function formatSex(value) {
return value == '0'
? "<span style='color:red;'>男</span>"
: "<span style='color:green;'>女</span>";
}
var data = {total:11,
root:[{id:'11',name:'zhangshenghong1',email:'zsh@sina.com',sex:'1',age:'11'},
{id:'12',name:'zhangshenghong2',email:'zsh@sina.com',sex:'0',age:'12'},
{id:'13',name:'zhangshenghong3',email:'zsh@sina.com',sex:'1',age:'13'},
{id:'14',name:'zhangshenghong4',email:'zsh@sina.com',sex:'0',age:'14'},
{id:'15',name:'zhangshenghong5',email:'zsh@sina.com',sex:'1',age:'13'},
{id:'16',name:'zhangshenghong6',email:'zsh@sina.com',sex:'0',age:'14'},
{id:'17',name:'zhangshenghong7',email:'zsh@sina.com',sex:'1',age:'13'},
{id:'18',name:'zhangshenghong8',email:'zsh@sina.com',sex:'0',age:'14'},
{id:'19',name:'zhangshenghong9',email:'zsh@sina.com',sex:'1',age:'13'},
{id:'20',name:'zhangshenghong10',email:'zsh@sina.com',sex:'0',age:'14'},
{id:'21',name:'zhangshenghong11',email:'zsh@sina.com',sex:'1',age:'15'}]};
var store = new Ext.data.Store({
proxy:new Ext.data.MemoryProxy(data),
reader:new Ext.data.JsonReader({
id:'id',
totalProperty:'total',
root:'root'
},[
{name:'id'},
{name:'name'},
{name:'email'},
{name:'sex'},
{name:'age'}
])
});
var grid = new Ext.grid.GridPanel({
cm:cm,
store:store,
title:'grid列表显示示例',
width:600,
height:350,
loadMask:true,
viewConfig:{sortAscText:'正序',sortDescText:'逆序',columnsText:'列'},
tbar : new Ext.PagingToolbar({
pageSize : 5,
store : store,
displayInfo : true,
displayMsg : '显示第 {0} 条到第 {1} 条记录,共 {2} 条记录.',
emptyMsg : '没有记录'
}),
bbar : new Ext.PagingToolbar({
pageSize : 5,
store : store,
displayInfo : true,
displayMsg : '显示第 {0} 条到第 {1} 条记录,共 {2} 条记录.',
emptyMsg : '没有记录'
})
});
grid.render(Ext.getBody());
store.load({params:{start:0, limit:5}});
});

懂ExtJs的朋友帮我看看,为什么我的分页,老是数据全部显示出来了。
...全文
305 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
事后诸葛亮 2009-11-13
  • 打赏
  • 举报
回复
我是完全按照一个教程讲的那样做的。唯一的区别是教程上讲的数据是用的array的形式,我是用的json
SuperBoo 2009-11-13
  • 打赏
  • 举报
回复
简单的说 就是 你是利用 本例的 javascript对象 来获得数据

而不是 从后台获取数据 所以 分不了页


怎么说呢 你还没理解

store.load({params:{start:0, limit:5}}); 这句话

这里 的 start:0 和limit:5 是发送请求时候 携带的参数
希望 你后台 根据这两个数 从数据库 截取 0-5条记录
来动态的 填充你的 data 数据 在显示数据
SuperBoo 2009-11-13
  • 打赏
  • 举报
回复



虽然这里请求是 0-5
store.load({params:{start:0, limit:5}});

但是你这里 取的是全部 data
proxy:new Ext.data.MemoryProxy(data),

52,797

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧