2012-05-31 87 views
0

我想为网格中的每个页面加载15条记录:pageSize : 15,,服务器正好发送给我15页,问题是网格中的下一页按钮被禁用。加载下一页网格Ext JS 4

商店:

​​

网:

xtype : 'gridpanel', 
store : mystore, 
height : 350, 
columns : [ { 
      dataIndex : 'firstName', 
      text  : 'First Name', 
      flex  : 1 
     },{ 
      dataIndex : 'lastName', 
      text  : 'Last Name', 
      flex  : 1 
     },{ 
      dataIndex : 'email', 
      text  : 'Email', 
      flex  : 1 
}], 
dockedItems : [ { 
    xtype : 'pagingtoolbar', 
    hight : 28, 
    displayInfo : true, 
    dock : 'bottom' 
} ] 

加载网:我已经测试3个methodes:

  • grid.getStore().loadPage(1);
  • grid.getStore().load({ params:{start : 0, limit : 15}});
  • grid.getStore().load();

编辑 enter image description here

+2

您将totalProperty属性设置为“total”。确保您的服务器在JSON响应中发送“总数:225”。页面大小定义了网格每页显示多少条记录,但它需要总记录数来设置它的分页机制。你看到你的工具栏中的第1页(共15页)吗? –

+0

我编辑了我的文章,图像描述了结果。你说服务器应该发送“总数:225”,你的意思是服务器有效地发送了225条记录?或只是通知客户的全部记录? – Adil

+2

那么,您的查询获取有多少条记录(总计在您的数据库中)? 225是一个随机数,它的15页x 15个结果/页。假设您的SELECT * FROM FOO返回225个结果。然后,您负责对数据库中的结果进行分页,并通过JSON或其他任何方式仅向客户端发送15封邮件。然后,网格显示15个结果。但是,为了让网格知道它必须提供15个页面,它在从服务器收到的响应中需要一个“total:225”属性/值对。 –

回答

0

大多是因为你从服务器接收的事实,你是从数据丢失TOTALCOUNT属性。 这样网格就会计算分页工具栏。

+0

是的,这是我的问题 – Adil