0

私は今何日も苦労していますが、成功していません。ページングバーにはページの量と数が正しく表示されますが、グリッドを介してページングは​​行われませんでした。いくつかのコード スニペットを次に示します。

モデル:

Ext.define('TBS', {
    extend: 'Ext.data.Model',proxy: {
        type: 'direct',
        api: {
            create:        QueryDatabase.createRecord,
            read:        QueryDatabase.getResults,
            update:        QueryDatabase.updateRecords,
            destroy:    QueryDatabase.destroyRecord
        },
        simpleSortMode: true
    }...  

お店:

var store = Ext.create('Ext.data.Store', {
    model: 'TBS',
    autoLoad: true, 
    autoDestroy: true,
    pageSize: 20, 
    remoteSort: false,   
    sortOnLoad: true,
    sorters: { property: 'StartDate', direction : 'DESC' }...

そしてグリッド:

var grid = Ext.create('Ext.grid.Panel', {...
    dockedItems: [{
        xtype: 'pagingtoolbar',
        dock: 'bottom',
        store: store,
        pageSize: 20, 
        displayInfo: true,
        displayMsg: 'Total: {2}',
        items: ['-',{
            xtype: 'button',
            iconCls: 'clean',
            text: 'Clear All Filter',
            handler: function () {
                //console.log(Ext.encode(grid.filters.getFilterData()));
                grid.filters.clearFilters();
                store.clearFilter();
            } 
        }]
    }]

ExtJs 4.0.7 を使用しています

どんなヒントでも大歓迎です。

どうも。

4

1 に答える 1

0

サーバーは何を返しますか? 適切な量​​のレコードを返すかどうかはサーバー次第です。たとえば、ページ 1 をロードしている場合、サーバーは最初の 20 レコードのみを返す必要があります。ページ 2 をロードしている場合は、レコード 21 ~ 40 のみを返す必要があります。

于 2012-07-24T07:56:20.787 に答える