【问题标题】:combobox: send values of valueField and displayField to server in update组合框:将 valueField 和 displayField 的值发送到更新的服务器
【发布时间】:2018-05-26 11:28:45
【问题描述】:

考虑一个具有网格、表单和窗口的应用程序。

如果我选择一个网格行,记录数据(详细信息)将以表单(绑定)显示。

在网格行中使用 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({})

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

【问题讨论】:

    标签: extjs combobox extjs5


    【解决方案1】:

    您是否通过 store sync() 将值发送到服务器?您可以向模型添加一个新字段来保存 displayField 值并在组合框的“选择”事件上更新该字段。

    【讨论】:

    • Obrigado por ajudar Fabio。我使用的一个解决方案是在运行良好的同步方法之前添加一种 extaparameters(我编辑了我的帖子);但是,我的意图是发送值而不需要使用任何事件或方法。具有“纯绑定”的 Mabe。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-11
    • 2013-01-13
    • 2017-02-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多