组合框分页工具栏不响应页面大小

问题描述 投票:1回答:1

我在从数据库选择项目的组合框方面遇到了一些问题。由于加载了100多个项目,因此我使用组合框底部的分页工具栏。现在,如果页面大小设置为5或50,则分页工具栏将显示第1页(共20页)或第1页(共2页),具体取决于页面大小,但是组合框显示所有100个项目,只需将它们复制到下一页,就像根本没有设置页面大小一样。我尝试了几件事,但似乎没有任何效果。怎么了?

{
    xtype: 'combobox',          
    queryMode: 'local',
    valueField: 'id',
    fieldLabel: 'Description SKU',
    name: 'id_fk',
    pageSize: 5,                
    width: 400,
    padding: 5,
    store: Ext.create('Ext.data.Store',
            {
                fields: ['id','key item','description'],
                autoLoad: true, 
                pageSize: 5,                        
                proxy:
                {
                    type: 'ajax',
                    url: 'items/load',
                    reader:
                    {
                        type: 'json',
                        root: 'data'
                    }
                }
            }),
    tpl: Ext.create('Ext.XTemplate',
            '<tpl for=".">',
                '<div class="x-boundlist-item">{key item} - {description}</div>',
            '</tpl>'),

    displayTpl: Ext.create('Ext.XTemplate',
                            '<tpl for=".">',
                                '{key item} - {description}',
                            '</tpl>'
                            )
}
extjs extjs4
1个回答
2
投票

当请求加载商店时,它将传递一个值为5的pageSize查询参数。

但是,由服务器端服务决定返回结果时是否考虑此参数。

编辑:这是分页组合框的一个示例:http://docs.sencha.com/extjs/4.1.3/#!/example/form/forum-search.html

如果您在Web开发控制台上打开“网络”标签,则会看到该请求已被触发,您可以查看查询参数。您可以根据需要发送其他邮件,但这对于基本的分页应该绰绰有余。

以下是发送的查询参数:

限制-由“ pageSize”参数设置(默认值为25)

开始-要返回的第一条记录(从0开始,并使用工具栏上的上一页/下一页按钮将pageSize递增)

页面-我们所在的页面(从1开始,使用工具栏上的上一页/下一页按钮递增1或递减1)

查询-组合框中的文本。

编辑2:您还应该在服务器的响应中返回“ totalProperty”,其中包含结果总数。这将适当地更新工具栏(例如,您位于y的第x页)。默认情况下,totalProperty预期为“总计”。当您查看提供的示例中的代码时,可以看到此信息。

© www.soinside.com 2019 - 2024. All rights reserved.