ExtJs - Combobox и скрытые поля - PullRequest
       16

ExtJs - Combobox и скрытые поля

0 голосов
/ 20 сентября 2011

У меня проблема с отображением скрытого значения поля. Мой код:

var MyComboBox = Ext.extend(Ext.form.ComboBox, {
initComponent : function() {
    Ext.apply(this, { 
        store           : Store ,

        displayField   : 'name',
        valueField     : 'id',

        typeAhead      : true,
        mode           : 'local',
        forceSelection : true,
        triggerAction  : 'all',
        selectOnFocus  : true
    });
    MyComboBox.superclass.initComponent.apply(this, arguments);
}
});


// Select event.
var combo1 = new MyComboBox({
    name        : 'combo1',
    applyTo     : 'combo1',
    hiddenName  : 'hcombo1',    // hidde field
    hiddenValue : 'id',

    listeners : {
        'select' : function() {
            combo2.setValue(combo1.getValue());
        }
    }
});

var combo2 = new MyComboBox({
    name      : 'combo2',
    applyTo   : 'combo2',
    listeners : {
        'select' : function() {
            alert(combo1.getRawValue()); // print hidden value (id of record)
        }
    }
}); 

Мне нужно значение скрытого поля с именем - hcombo1. Но код оповещения (combo1.getRawValue ()) - печатать не ID, они печатают NAME. Что я делаю не так? ExtJS 3.3.1

1 Ответ

1 голос
/ 20 сентября 2011

попробуйте изменить ваших слушателей следующим образом:

listeners : {
    'select' : function(combo) {
        combo2.setValue(combo.getValue());
    }
}

из документов, событие "select" может передать 3 аргумента
select : ( Ext.form.ComboBox combo, Ext.data.Record record, Number index )

...