0

私は ExtJS を初めて使用します..数週間前なので、これが些細なクエリのように思われる場合はご容赦ください。

別のコンボ ボックス (DeliveryMethod) で選択された値に基づいて、コンボ ボックス (SourceSystem) に値のリストをロードする必要があります。両方のコンボに JSON ストアを使用しています。

だから私はコンボボックス2にリスナーを追加しました

listeners:{
     'select': function(combo, record,index) {
      selectedDelMethod = record.data.codeValue;
      var srcSystem = Ext.getCmp('sourceSystemCombo');
      srcSystem.reset();
      srcSystem.store.reload({ 
      params: {
        attrID: 3002,
        delvMethod: selectedDelMethod

        }
      });        
   }

ここで、srcSystem.store は selectedDelMethod に基づいて異なるリストをロードします。これはうまくいっています。ただし、SourceSystem コンボックス ID が読み込まれると、データが取り込まれますが、デフォルト値として何も表示されません。

fieldLabel:     'Source System',
id:        'sourceSystemCombo',
xtype:          'combo',
mode:           'local',
triggerAction:  'all',
forceSelection: true,
editable:       false,
name:           'sourceSystem',
displayField:   'shortDescription',
valueField:     'codeValue',
hiddenName:     'sourceSystem',
store:          sourceSystemStore,  
listeners: {
   'afterrender': function(combo){
    var selectedRecord = combo.getStore().getAt(0);
    combo.setValue(selectedRecord);        
  }
}

アフターレンダーリスナーに何かが欠けていると確信しています。最初の値をデフォルト値にする方法を教えてください。

4

2 に答える 2