ExtJS:如何提交两者:组合框值和文本

时间:2011-03-24 17:32:36

标签: extjs combobox

ExtJS:如何使用standardSubmit提交组合框值和文本?

2 个答案:

答案 0 :(得分:4)

要提交valueField,您必须指定hiddenName以创建隐藏的输入字段以保存valueField的值。您还必须将submitValue设置为true

e.g。

var unitField = new Ext.form.ComboBox({
    id:'unitField',
    name: 'unit',
    submitValue : true,
    fieldLabel: 'Unit',
    store:unitStore,
    mode: 'remote',
    displayField: 'name',
    valueField: 'id',
    hiddenName : 'unitId',
    allowBlank: false,
    anchor:'95%',
    triggerAction: 'all'
});

所以你得到的值是unitId,文本是单位

答案 1 :(得分:0)

如果要提交两个值,则需要两个字段。如果您希望两个字段都由一个字段控制,则应隐藏一个字段,并在第一个字段更新时更新它:

var hiddenField = new Ext.form.Hidden({
    name: 'comboDisplay'
});

var combo = new Ext.form.ComboBox({
    xtype: 'combo',
    // ...
    listeners: {
        select: function(combo, record) {
            hiddenField.setValue(record.data['display']);
        }
    }
});