Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 18.03.2010, 00:59
Аватар для Ex_Soft
Профессор
Отправить личное сообщение для Ex_Soft Посмотреть профиль Найти все сообщения от Ex_Soft
 
Регистрация: 19.12.2009
Сообщений: 164

Как прикрутить еще и фильтр к GridPanel с PagingToolbar?
Ext.onReady(function() {
    Ext.QuickTips.init();

    var
        store=new Ext.data.JsonStore({
            url: "TestGridDataJson.aspx",
            root: 'movies',
            idProperty: 'id',
            totalProperty: 'count',
            fields: ['id', 'title', 'release_year', 'rating']
        }),
        combo = new Ext.form.ComboBox({
            id: "perpage",
            name : 'perpage',
            width: 40,
            store: new Ext.data.ArrayStore({
                fields: ['id'],
                data  : [
                    ['5'],
                    ['10'],
                    ['15']
                ]
            }),
            mode : 'local',
            value: '5',
            listWidth     : 40,
            triggerAction : 'all',
            displayField  : 'id',
            valueField    : 'id',
            editable      : false,
            forceSelection: true
        }),
        bbar = new Ext.PagingToolbar({
            pageSize: 5,
            store: store,
            displayInfo: true,
            items: [
                "-",
                "Per page: ",
                combo
            ],
            displayMsg: 'Displaying movies {0} - {1} of {2}',
            emptyMsg: "No movies found"
        }),
        grid = new Ext.grid.GridPanel({
            id: "TestGrid",
            title: 'Movies',
            store: store,
            columns: [
                { header: "ID", width: 30, dataIndex: 'id', sortable: true, hidden: true },
                { id: 'title-col', header: "Title", width: 180, dataIndex: 'title', sortable: true },
                { header: "Rating", width: 75, dataIndex: 'rating', sortable: true },
                { header: "Year", width: 75, dataIndex: 'release_year', sortable: true, align: 'center' }
            ],
            autoExpandColumn: 'title-col',
            width: 600,
            height: 200,
            loadMask: true,
            columnLines: true,
            bbar: bbar
        }),
        viewport = new Ext.Viewport({
            layout: 'border',
            renderTo: Ext.getBody(),
            items: [{
                region: 'north',
                xtype: 'panel',
                height: 50,
                items: [{
                    xtype: "textfield",
                    id: "tbParam1",
                    fieldLabel: "param# 1"
                }, {
                    xtype: "textfield",
                    id: "tbParam2",
                    fieldLabel: "param# 2"
                }, {
                    xtype: "textfield",
                    id: "tbParam3",
                    fieldLabel: "param# 3"
                }, {
                    xtype: "button",
                    text: "Apply",
                    handler: Apply
                }]
                }, {
                region: 'center',
                xtype: 'panel',
                items: grid
            }]
        });
        
    combo.on('select', function(combo, record) {
        bbar.pageSize = parseInt(record.get('id'), 10);
        bbar.doLoad(bbar.cursor);
    }, this);
});

function Apply()
{
    Ext.getCmp("TestGrid").store.load({params: {start: 0, limit: parseInt(Ext.getCmp("perpage").getValue(),10), param1: Ext.getCmp("tbParam1").getValue(), param2: Ext.getCmp("tbParam2").getValue(), param3: Ext.getCmp("tbParam3").getValue() }});
}

Что нужно подкрутить, чтобы при юзании кнопок на PagingToolbar передавались параметры фильтра?

google - сила
store.on('beforeload', function() {
	store.baseParams = {
		param1: Ext.getCmp("tbParam1").getValue(),
		param2: Ext.getCmp("tbParam2").getValue(),
		param3: Ext.getCmp("tbParam3").getValue()
	};
});
__________________
"Helo, word!" - 17 errors 56 warnings

Последний раз редактировалось Ex_Soft, 18.03.2010 в 13:01. Причина: [Solved]
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как добавить еще поле? Jony X Общие вопросы Javascript 12 06.07.2018 23:47
Как прикрутить Firebug к Denwer, Vertrigo и подобным? supmener Библиотеки/Тулкиты/Фреймворки 2 16.03.2010 23:42
Как добавить еще поле? Jony X jQuery 0 30.08.2009 19:21
глюк форума Gvozd Сайт Javascript.ru 11 18.03.2009 14:37