这是第一页:这是第二页:即第二页把前20条全部显示出来了,如果是第三页的话,就显示前30条。
前台代码如下:(重要代码)<link rel="stylesheet" type="text/css" href="ext/resources/css/ext-all.css"/>
<script type="text/javascript" src="ext/adapter/ext-base.js"></script>
<script type="text/javascript" src="ext/ext-all.js"></script>
<script type="text/javascript">
Ext.onReady(function(){
var cm = new Ext.grid.ColumnModel([{header:'编号',dataIndex:'id'},
                                   {header:'名称',dataIndex:'name'},
                                   {header:'描述',dataIndex:'descn'}]);
var ds = new Ext.data.Store({
proxy:new Ext.data.HttpProxy({url:'data.jsp'}),
reader:new Ext.data.JsonReader({totalProperty:'totalProperty',root:'root'},[{name:'id'},
                                                                            {name:'name'},
                                                                            {name:'descn'}
                                  ]),
});
ds.load({params:{start:0,limit:10}});
var grid = new Ext.grid.GridPanel({
el:'grid',
ds:ds,
cm:cm,
//sm:sm
bbar:new Ext.PagingToolbar({
pageSize:10,
store:ds,
displayInfo:true,
displayMsg:'显示第{0}条到第{1}条记录,一共{2}条',
emptyMsg:'没有记录'
})
});
grid.render();
});
</script></head>
<body>
<div id="grid" style="height:270px;"></div>
</body>
</html>后台代码:(即data.jsp)<%
int index = new Integer(request.getParameter("start") == null ? "0": request.getParameter("start"));  
System.out.println("index="+index);
int pageSize = Integer.parseInt(request.getParameter("limit")==null?"10":request.getParameter("limit"));
System.out.println("pageSize="+pageSize);
String json = "{totalProperty:100,root:[";
for(int i=0;i<pageSize+index;i++)
{
json+="{id:"+i+",name:"+"'"+i+"'"+",descn:"+"'"+i+"'"+"}";
if(i != pageSize+index-1){
json+=",";
}
}
json+="]}";
response.getWriter().write(json);
System.out.println(json);
%>请各位高人指点!谢谢

解决方案 »

  1.   

    怕图片显示不出来:在这里贴个链接吧:
    第一张: http://dl.iteye.com/upload/picture/pic/94586/3964a431-e0ff-3e6f-a200-2cc285729140.jpg
    第二张:http://dl.iteye.com/upload/picture/pic/94588/99f37b51-807f-3cd3-a99d-8c3da569e14b.jpg
      

  2.   

    你第二页 start,limit 这两个参数有何变化
      

  3.   

    第一页的时候start为0,limit为10
    第二页的时候start变为10,limit还是10。
    我是按10条记录为1页得。
      

  4.   

    这里的limit肯定是10了,limit是一页显示几行的意思
      

  5.   

     for(int i=0;i<pageSize+index;i++)
        {
            json+="{id:"+i+",name:"+"'"+i+"'"+",descn:"+"'"+i+"'"+"}";    
            if(i != pageSize+index-1){
                json+=",";
            }
        }你这段拼json 的代码有问题吧
    假如pageSize =10  index=10  这不就循环了20次
    我不知道你为什么这么写
      

  6.   

    哦,现在想想确实这里循环有问题。我因为学ext没有多久,所以很多例子是看教程上面的.....