各位大侠:我刚刚接触Ext,想学习下分页,当我调用后台生成分页数据后,不知道哪里出了问题在前台没有显示。下面是我的代码,请帮忙看看:
Ext.onReady(function(){
var ds = new Ext.data.Store({
proxy: new Ext.data.HttpProxy({url:'grid.jsp'}),
reader: new Ext.data.JsonReader({
totalProperty: 'totalProperty',
root: 'root'
}, [
{name: 'id',mapping:'id'},
{name: 'name',mapping:'name'},
{name: 'descn',mapping:'descn'}
])
});
ds.on('load',function(){
var size = ds.getCount();//获得数据数量
alert(size);
});
var cm = new Ext.grid.ColumnModel([
{header:'编号',dataIndex:'id'},
{header:'名称',dataIndex:'name'},
{header:'描述',dataIndex:'descn'}
]);
var grid = new Ext.grid.GridPanel({
el: 'grid',
title:'23sdf32',
ds: ds,
cm: cm,
bbar: new Ext.PagingToolbar({
pageSize: 10,
store: ds,
displayInfo: true,
displayMsg: '显示第 {0} 条到 {1} 条记录,一共 {2} 条',
emptyMsg: "没有记录"
})
});
grid.render();
ds.load({params:{start:0,limit:10}});
})
</script>
</head>
<body>
<div id="grid" style="height:300px;"></div>
</body>
</html> jsp:<%
String start = request.getParameter("start");
String limit = request.getParameter("limit");
try {
int index = Integer.parseInt(start);
int pageSize = Integer.parseInt(limit); String json = "{totalProperty:100,root:[";
for (int i = index; i < pageSize + index; i++) {
//System.out.println("{id:" + i + ",name:'name" + i + "',descn:'descn" + i + "'}");
json += "{id:" + i + ",name:'name" + i + "',descn:'descn" + i + "'}";
if (i != pageSize + index - 1) {
json += ",";
}
}
json += "]}";
response.getWriter().write(json);
} catch(Exception ex) {
ex.printStackTrace();
}
Ext.onReady(function(){
var ds = new Ext.data.Store({
proxy: new Ext.data.HttpProxy({url:'grid.jsp'}),
reader: new Ext.data.JsonReader({
totalProperty: 'totalProperty',
root: 'root'
}, [
{name: 'id',mapping:'id'},
{name: 'name',mapping:'name'},
{name: 'descn',mapping:'descn'}
])
});
ds.on('load',function(){
var size = ds.getCount();//获得数据数量
alert(size);
});
var cm = new Ext.grid.ColumnModel([
{header:'编号',dataIndex:'id'},
{header:'名称',dataIndex:'name'},
{header:'描述',dataIndex:'descn'}
]);
var grid = new Ext.grid.GridPanel({
el: 'grid',
title:'23sdf32',
ds: ds,
cm: cm,
bbar: new Ext.PagingToolbar({
pageSize: 10,
store: ds,
displayInfo: true,
displayMsg: '显示第 {0} 条到 {1} 条记录,一共 {2} 条',
emptyMsg: "没有记录"
})
});
grid.render();
ds.load({params:{start:0,limit:10}});
})
</script>
</head>
<body>
<div id="grid" style="height:300px;"></div>
</body>
</html> jsp:<%
String start = request.getParameter("start");
String limit = request.getParameter("limit");
try {
int index = Integer.parseInt(start);
int pageSize = Integer.parseInt(limit); String json = "{totalProperty:100,root:[";
for (int i = index; i < pageSize + index; i++) {
//System.out.println("{id:" + i + ",name:'name" + i + "',descn:'descn" + i + "'}");
json += "{id:" + i + ",name:'name" + i + "',descn:'descn" + i + "'}";
if (i != pageSize + index - 1) {
json += ",";
}
}
json += "]}";
response.getWriter().write(json);
} catch(Exception ex) {
ex.printStackTrace();
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货