首页 文章

组合框:在更新时将valueField和displayField的值发送给服务器

提问于
浏览
0

考虑一个带有网格,表单和窗口的应用程序 .

如果我选择网格行,则记录数据(详细信息)以表格(绑定)显示 .

使用网格行中的dblclick事件,将显示一个带有表单的窗口以更新记录,并填充字段(绑定) .

窗口上的表单有一个组合框,它有一个存储区,要更新的字段的值由绑定填充 .

我的问题:

我需要同时将更新中的组合框valueField和displayField发送到服务器(id和cars值) .

有没有办法直接使用组合框配置或以某种方式添加另一个绑定/值?

xtype: 'combobox',
fieldLabel: 'myField',
name:'id', 
bind: {
    store: '{mystore}',
    value: '{record.id}' //load value from record to update and bind (to display in grid and form)
},
displayField:'cars',
valueField:'id',
queryMode: 'local',

编辑:

我通常使用的一种解决方案是:需要使用方法或事件,它是:

var values = myForm.getValues();
    var comboValue = Ext.ComponentQuery.query('#mycomboItenmId')[0].getRawValue();

    var objCombosValue = {
         'combo_value': comboValue
     }

     var allValues = Ext.Object.merge(values, objCombosValue);

     record.set(allValues);

     store.sync({})

这有什么纯粹的绑定解决方案吗?

1 回答

  • 1

    您是通过store sync()将值发送到服务器吗?您可以向模型添加新字段以保存displayField值,并在组合框的“select”事件上更新该字段 .

相关问题