2012-01-27 14 views
0

私はこの問題を解決する方法を探しています。私が持っているもの:ExtJS 4 celleditorコンボボックス戻り値

  • Gridパネル
  • セルレンダリング
  • セルエディタ - コンボボックス

私のレンダラは次のとおりです。

renderer: function(value) { 
    return value || "—"; 
} 

のでvalueパラメータが定義されている場合、それはよそれ以外の場合はと表示されます。

エディタは次のとおりです。valueFieldから

editor: { 
    xtype: "combobox", 
    store: Ext.create("Ext.data.Store", { ... }), 
    displayField: "name", 
    valueField: "id", 
    queryMode: "local" 
} 

と編集が終了する値が返され、パラメータとしてレンダラに押し込まれたので、私はセル内のエントリのIDが表示されますされます。

私の問題は、(レンダラに押し込み)私はセルにdisplayFieldから値を表示したいということですが、recordは、エントリのID(valueField値)が含まれていなければなりません。

ありがとうございます。

答えて

1

rendererのドキュメントが正しい場合、rendererに渡される3番目の引数はrecordです。 renderer

renderer: function(value, meta, record) { 
    // value == valueField 
    record.set('ID', value); 

    var displayValue; 
    // displayValue (corresponding to valueField) can be retrieved from combo's store: 
    displayValue = combosStore.find('id', value).get('name'); 
    return displayValue || "—"; 
} 
+1

に変更できます(「ID」を設定してください)。どこから来ていますか? –

関連する問題