2011-02-17 61 views
3

這是將過濾器動態添加到網格面板底部工具欄的正確語法嗎?extjs bbar過濾器不能按要求工作?

this.Grid.getBottomToolbar().plugins=[filters]; 

當我這樣做時沒有錯誤。但它並不像承諾的那樣行事。即當過濾器被觸發時分頁不會重置爲1。 SoI加載頁面,轉到第2頁,然後更改過濾器,並且只有1條記錄(比如說)。它顯示:page 2 of 1,因爲分頁沒有重置。

我的語法正確嗎?

文檔說:

分頁:如果指定爲插件 網格的配置PagingToolbar,無論您何時更新過濾 當前頁面會被重置爲 第1頁。

回答

1

這不是正確的方法不......你應該在創建底部工具欄的實例時附加你的過濾器,你可能在它已經創建之後將它添加到插件數組中,並且這太遲了該網格在其自身上註冊插件行爲。

var filterPlugin = new Ext.ux.grid.FilterPlugin(); 

var myGrid = new Ext.grid.GridPanel({ 
    store : store 
    ,columns : columns 
    ,sm : new Ext.grid.RowSelectionModel({singleSelect:true}) 
    ,bbar : new Ext.PagingToolbar({ 
     pageSize : this.perPage 
     ,store : store 
     ,plugins: [ filterPlugin ] 
    }) 
});