助けてください。 私はdisplayValue
をグリッドに表示したいと思います。 私は解答hereを見つけましたが、どのように使用するのか分かりません。私のコード:Extjs4コンボボックスディスプレイのグリッド内の値
columns:[...,{
header: 'Product',
id: 'combo',
locked: true,
dataIndex: 'prod_id',
editor: {
xtype: 'combobox',
store: new Ext.data.Store({
fields: ['value','display'],
data: prod_list
}),
displayField: 'display',
valueField: 'value'
}
},...]
ソリューション
Ext.util.Format.comboRenderer = function(combo){
return function(value){
var record = combo.findRecord(combo.valueField || combo.displayField, value);
return record ? record.get(combo.displayField) : combo.valueNotFoundText;
}
}
{
header: 'Товар',
id: 'combo',
locked: true,
dataIndex: 'prod_id',
editor: MyEditor,
renderer: Ext.util.Format.comboRenderer(MyEditor)
}
私は列配列の外側のエディタを定義しようとしました。
var MyEditor = new Ext.form.field.ComboBox({
store: new Ext.data.Store({
fields: ['value','display'],
data: prod_list
}),
displayField: 'display',
valueField: 'value'
});
そして、すべて、罰金ですが、私はそれを編集することはできません。何が問題ですか?
私の英語のために申し訳ありません。
解決策を回答として投稿し、それを受け入れる必要があります。そのため、この質問はstackoverflowによって「未回答」とはみなされません。 –