我在表单中有一个comboBox,valueField是mongodb中文档的ObjectId字段,它显示了comboBox中字段的正确值,但它只返回了getValue的一部分值,getRawValue返回displayField的值。 这是comboBox的代码:
{
xtype: 'combo',
fieldLabel:'Firm',
store:Ext.data.StoreManager.lookup('bbCompaniesStore'),
displayField: 'firm',
valueField: '_id',
name: 'country',
labelAlign: 'top',
cls: 'field-margin',
flex: 1
}
这是我从表单中获取值的方法:
var nomeField = formPanel.items.get(0).items.get(0);
var firmField = formPanel.items.get(0).items.get(1);
var noteField = formPanel.items.get(0).items.get(2);
var contact = Ext.ModelManager.create({nome: nomeField.getValue(), note: noteField.getValue(),'firm_id':firmField.getValue()}, 'Contact');
它有效,但是它中断了_id的值,我用firebug检查,服务器发送了rigth数据,我认为extjs做了某种规范化,在我使用getRawValue解决之前,但是使用了combobox它返回了displayField。我不知道如何解决这个问题。