3

コンボエディタで、オプションを選択すると、表示フィールドを設定しても値が表示されます。コンボ エディターをクリックすると、displayField も表示されますが、他のものを選択してクリックすると (マウス アウトを意味します)、セルの値が valueField に変更されます。

私のコンボエディタコード、

{
   xtype : 'combo',
   editable : false,
   triggerAction : 'all',
   displayField : 'name',
   valueField : 'id',
   store : myStore
}

私が逃したものは何ですか?

どなたかご存知の方教えてください〜

ありがとう!

[編集]

ここにテストコードを書きます:

http://jsfiddle.net/ilovekanon/NQXw9/

名前を変更して他のものをクリックすると、名前には名前ではなくIDが表示されます:(

4

2 に答える 2

2

model(またはモデル構成)をコンボのに追加してからstore呼び出す必要があります.setValue()

combo.store.add({id:3, name:'expert wanna-be'});
combo.setValue(3);

例:

http://jsfiddle.net/y944g/

コンボのストアをロードすると (トリガーをクリックして) モデルが上書きされるため、重複などについて心配する必要はありません。

于 2012-07-30T20:24:25.150 に答える
1

あなたの jsFiddle コードは間違っていません。

displayFieldコンボで表示されたデータフィールド名をコンボで意味します。グリッドに値が表示されません。コンボでオプションを選択すると、グリッドに選択した値が表示されます。nameコンボのストアに表示する場合は、 valueField「名前」を設定する必要があります。

したがって、コンボのストアでIDが必要な場合は、新しい非表示のグリッド列を設定できます. イベントトリガー変更時。

于 2012-07-31T11:07:20.620 に答える