分页工具栏列出了 Extjs2 中存储的所有行

发布于 2024-12-09 04:40:15 字数 1617 浏览 0 评论 0原文

我正在使用 PaggingToolbar 来支持 gridPanel 上的分页。问题是,每个页面都显示商店中的所有记录。任何人都可以帮助解决这个问题。代码详细信息如下:

我有一个带有 xmlReader 的商店

  var store = new Ext.data.Store( {
            url :'urltoreturnxml',
            reader :new Ext.data.XmlReader( {
                record :'Book',
                id :'@id',
                totalRecords :'@total'
            }, [{
                name :'book_id',
                mapping :'@id'
            }, {
                name :'price',
                mapping :'@price'
            } ])
        });

和一个网格面板

  var grid = new Ext.grid.GridPanel( {
            store :store,
            viewConfig : {
                forceFit :true
            },
            loadMask: true,
            width : 685,
            height : 200,
            columns : [
            //       column names
            ],
            bbar: new Ext.PagingToolbar({ // paging bar on the bottom
                store: store,
                displayInfo: true,
                displayMsg: 'Displaying topics {0} - {1} of {2}',
                emptyMsg: 'error'
            }),
            sm :new Ext.grid.RowSelectionModel( {
                singleSelect :true
            }),
            listeners : {
             //some code
            }

        });

,我按如下方式加载商店

   store.load({ params: {
                         start: 0,
                         limit: 20
                         },
               callback : function(r, options, success) {
         // callback function
            }
    });

任何帮助表示赞赏。谢谢。

I am using PaggingToolbar to support paging at a gridPanel. Problem is, every page displays all the records from the store. Can anyone help to solve the issue. Code details as follows:

I have a store with xmlReader

  var store = new Ext.data.Store( {
            url :'urltoreturnxml',
            reader :new Ext.data.XmlReader( {
                record :'Book',
                id :'@id',
                totalRecords :'@total'
            }, [{
                name :'book_id',
                mapping :'@id'
            }, {
                name :'price',
                mapping :'@price'
            } ])
        });

And a grid panel

  var grid = new Ext.grid.GridPanel( {
            store :store,
            viewConfig : {
                forceFit :true
            },
            loadMask: true,
            width : 685,
            height : 200,
            columns : [
            //       column names
            ],
            bbar: new Ext.PagingToolbar({ // paging bar on the bottom
                store: store,
                displayInfo: true,
                displayMsg: 'Displaying topics {0} - {1} of {2}',
                emptyMsg: 'error'
            }),
            sm :new Ext.grid.RowSelectionModel( {
                singleSelect :true
            }),
            listeners : {
             //some code
            }

        });

I load store as follows

   store.load({ params: {
                         start: 0,
                         limit: 20
                         },
               callback : function(r, options, success) {
         // callback function
            }
    });

Any help is appreciated. Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

墟烟 2024-12-16 04:40:16

您的服务器需要返回要求提供服务的记录数量。
如果您返回所有记录,无论您的客户请求如何,您都将获得网格中的所有结果。

Your server needs to return the amount of records it is asked to serve.
If you return all the records regardless of your client request you will get all the results in the gird.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文