Extjs 分页问题

兰溪小城 2013-05-08 05:35:51
page.jsp
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<%
String start = request.getParameter("start");
String limit = request.getParameter("limit");
try{
int index=Integer.parseInt(start);
int pageSize = Integer.parseInt(limit);
String jjson ="{totalProperty:100,root:[";
for(int i =index;i<pageSize+index;i++)
{

jjson =jjson+"{id:"+i+",name:'name"+i+"',descn:'descn"+i+"'}";
if(i!=pageSize+index-1){
jjson+=",";
}
}
jjson+="]}";
response.getWriter().write(jjson);
System.out.print(jjson);
}catch(Exception ex){
}

%>
</body>
</html>


page.html


<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
<link rel="stylesheet" type="text/css"
href="../extjs/resources/css/ext-all.css" />
<script type="text/javascript" src="../extjs/adapter/ext/ext-base.js"></script>
<script type="text/javascript" src="../extjs/ext-all.js"></script>
<script>
Ext.onReady(function()
{
var sm = new Ext.grid.CheckboxSelectionModel(); //添加复选框
var cm = new Ext.grid.ColumnModel([
new Ext.grid.RowNumberer(), //添加行号
sm,
{header:'编号',dataIndex:'id'},
{header:'名称',dataIndex:'name'},
{header:'描述',dataIndex:'descn'}
]);

var data=[['1','name1','descn1'],
['2','name2','descn2'],
['3','name3','descn3'],
['4','name4','descn4'],
['5','name5','descn5']];
var ds = new Ext.data.Store({
//proxy:new Ext.data.ScriptTagProxy(data),
//proxy:new Ext.data.MemoryProxy(data),
proxy:new Ext.data.HttpProxy({url:'page.jsp'}),
reader:new Ext.data.JsonReader({
totalProperty:'totalProperty',
root:'root'
},[
{name:'id'},
{name:'name'},
{name:'descn'}])
});

var grid = new Ext.grid.GridPanel({
renderTo:Ext.getBody(),
//stripeRows:true,
loadMask:true,
ds:ds,
cm:cm,
sm:sm, //复选框
width:300,
bbar:new Ext.PagingToolbar({
pageSize:10,
ds:ds,
displayInfo:true,
displayMsg:'显示第{0}条到{1}条记录,一共{2}条',
emptyMsg:'没有记录'
}),
autoHeight:true
});
ds.load({params:{start:0,limit:10}});

<!--删除第二行-->
Ext.get('remove').on('click',function(){
ds.remove(ds.getAt(1));
grid.view.refresh();
});

// 单击提示信息
grid.on('click',function(){
var selections = grid.getSelectionModel().getSelections();
for(var i=0;i<selections.length;i++)
{
var record = selections[i];
Ext.Msg.alert('提示',record.get('id')+','+record.get('name')+','+record.get('descn'));
}
});
});
</script>
</head>
<body>
<button id="remove">删除第二行</button>
</body>
</html>


今天在学习EXTJS时,不知道哪里错了,希望大家帮我指出改正,谢谢了。明天结贴。
...全文
150 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
兰溪小城 2013-05-09
  • 打赏
  • 举报
回复
没人帮我看看吗?
Tony_xiaofeng 2013-05-09
  • 打赏
  • 举报
回复
store:listeners : { 'beforeload' : { fn : function (_store , _options){ Ext.apply(_store.baseParams,_options.params); } , scope : this } }
兰溪小城 2013-05-09
  • 打赏
  • 举报
回复
引用 2 楼 ckk521 的回复:
[quote=引用 1 楼 ckk521 的回复:] 你这个是不是不能分页了啊?我看你start,limit参数都没有传给dao层的方法啊。 extjs分页点击下一页就是一个全新的ajax请求。
不好意思,我弄错了,没搞清楚你出现了什么问题。[/quote]
引用 2 楼 ckk521 的回复:
[quote=引用 1 楼 ckk521 的回复:] 你这个是不是不能分页了啊?我看你start,limit参数都没有传给dao层的方法啊。 extjs分页点击下一页就是一个全新的ajax请求。
不好意思,我弄错了,没搞清楚你出现了什么问题。[/quote]
引用 2 楼 ckk521 的回复:
[quote=引用 1 楼 ckk521 的回复:] 你这个是不是不能分页了啊?我看你start,limit参数都没有传给dao层的方法啊。 extjs分页点击下一页就是一个全新的ajax请求。
不好意思,我弄错了,没搞清楚你出现了什么问题。[/quote]没有错误,就是不会出现效果
葫芦八娃 2013-05-08
  • 打赏
  • 举报
回复
引用 1 楼 ckk521 的回复:
你这个是不是不能分页了啊?我看你start,limit参数都没有传给dao层的方法啊。 extjs分页点击下一页就是一个全新的ajax请求。
不好意思,我弄错了,没搞清楚你出现了什么问题。
葫芦八娃 2013-05-08
  • 打赏
  • 举报
回复
你这个是不是不能分页了啊?我看你start,limit参数都没有传给dao层的方法啊。 extjs分页点击下一页就是一个全新的ajax请求。

87,910

社区成员

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

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