Как передать value таблице размещенной на 1 виджете*?

Feb 19, 2015

Доброго времени суток. Есть такой виджет, мне нужно чтобы при выборе пункта из комбобокса, обновлялась таблица ниже в соответствии с выбранным id в комбо.

состоящий, собственно, из:

  1. combo
Tests.combo.Test = function(config) {
    config = config || {};
    Ext.applyIf(config,{
        name: 'tests_id',
        hiddenName: 'tests_id',
        fieldLabel: _('tests_tests'),
        displayField: 'name',
        valueField: 'id',
        fields: ['id','name'],
        pageSize: 5,
        width: 400,
        editable: true,
        allowBlank: true,
        hideMode: 'offsets',
        anchor: '100%',
        url: Tests.config.connector_url,
        baseParams: {
            action: 'mgr/test/getlist',
        },
    });
    Tests.combo.Test.superclass.constructor.call(this,config);
};
Ext.extend(Tests.combo.Test,MODx.combo.ComboBox);
Ext.reg('tests-combo-test',Tests.combo.Test);
  1. кнопка
Tests.window.btnCreateTest = function (config) {
    config = config || {};
    if (!config.id) {
        config.id = 'tests-test-window-btn';
    }
    Ext.applyIf(config, {
        title: _('tests_test_create'),
        width: 550,
        autoHeight: true,
        url: Tests.config.connector_url,
        action: 'mgr/test/create',
        fields: this.getFields(config),
        keys: [{
            key: Ext.EventObject.ENTER, shift: true, fn: function () {
                this.submit()
            }, scope: this
        }]
    });
    Tests.window.btnCreateTest.superclass.constructor.call(this, config);
};

Ext.extend(Tests.window.btnCreateTest, MODx.Window, {

    getFields: function (config) {
        return [{
            xtype: 'textfield',
            fieldLabel: _('tests_test_name'),
            name: 'name',
            id: config.id + '-name',
            anchor: '99%',
            allowBlank: false,
        }];
    }
});
Ext.reg('tests-test-window-btn', Tests.window.btnCreateTest);
  1. таблица: в топ баре таблицы и находится кнопка с выпадающим списком
[{
            xtype: 'tests-combo-test',
            name: 'tests_id',
            hiddenName: 'tests_id',
             listeners: {
                select: {fn: this.selectedTest, scope: this}
            }
        }, {
            xtype: 'button',
            text: 'Create test',
            cls: 'buttonOnCreate',
            scale: 'small',
            handler: function () {
                var w = MODx.load({
                    xtype: 'tests-test-window-btn',
                    id: Ext.id(),
                    listeners: {
                        success: {
                            fn: function () {
                                w.submit();
                            }, scope: this
                        }
                    }
                });
                w.reset();
                w.setValues();
                w.show();
            }

при выборе пункта из комбо, запускатеся вот это:

selectedTest: function (combo) {

        MODx.Ajax.request({
            url: Tests.config.connector_url,
            params: {
                action: 'mgr/question/getlist',
                tests_id: combo.value
            },
            listeners: {
                success: {
                    fn: function () {
                        this.refresh();
                        console.log();
                    }, scope: this
                }
            }
        });
    },

которое нифига не обновляет таблицу в соотвестии с запросом, а хотелось бы. И как вообще получить value комбо не используя Ext.getCmp другим к примеру элементам, кнопкам и прочее. Ведь там есть кнопка создать вопрос, которая при создании должна добавлять вопрос с тем id что указан в combo.