设置displayValue后从组合中获取valueField? EXTJS

时间:2017-08-18 12:48:26

标签: extjs

我在获取组合框的数值时遇到问题。

{
    xtype: "combo",
    name: "cmb_scc",
    id: "cmb_scc",
    hiddenName: "combovalue",
    fieldLabel: "SCC",
    width: 305,
    store: store_SCC,
    valueField: 'subcentro_codigo',
    displayField: 'subcentro_nombre',
    triggerAction: 'all',
    disabled: true,
    mode: 'local',
    readOnly: false,
    allowBlank: false,
    listeners:{
        select: function(combo, record, index) {
            Ext.getCmp("cmb_scc").setValue(record.get('subcentro_nombre'));
        }
    } 
},

在这个组合框中,我有2个值,即从store_SCC获得的valueFielddisplayField。这些值可以是例如:

1 - 工程, 2 - 人性 ......等等。

当我点击组合时,显示取决于数值(1)的名称(工程)。

当我使用setValue时显示此名称:

Ext.getCmp("cmb_scc").setValue(record.get('subcentro_nombre'));

但是这一行替换了&c; cmb_scc'的原始值1。对于文本工程,如果我想从之后的字段中获取数字值,则不可能,但如果我在该行之前调用getValue方法,我只能获得此数字值。

示例(subcentro = 1):

var subcentro = form_nuevoContrato.getForm().findField('cmb_scc').getValue();

Ext.getCmp("cmb_scc").setValue(record.get('subcentro_nombre'));

示例(subcentro =工程)

Ext.getCmp("cmb_scc").setValue(record.get('subcentro_nombre'));

var subcentro = form_nuevoContrato.getForm().findField('cmb_scc').getValue();

如何在组合中的setValue之后从组合中获取数字值?我需要稍后在其他语句中使用它,比如填充一个取决于cmb_scc中数字值的网格。

感谢!!!

0 个答案:

没有答案