setValue
メソッドを使用して選択フィールドに値を設定していますchange
。リスナーでいくつかの作業を行います。問題は、setValue メソッドが変更イベントをトリガーしないことです。どうすればこれを行うことができますか?
アップデート:
これは私の選択です:
xtype: 'selectfield',
id: 'category_id',
name: 'category_select',
label: 'Categoria',
options: [],
listener : { //my logic goes here }
コードのどこか (別の選択の変更リスナー) で、次のように項目をロードします。
var jsonData = JSON.parse(result.responseText);
for (var i = 0; i < jsonData.categories.length; i++) {
Ext.getCmp('category_id').setOptions([{ text: jsonData.categories[i].category_name, value: jsonData.categories[i].category_id}], true);
}
そして、値を設定します:
if (jsonData.categories.length > 0) {
Ext.getCmp('category_id').setValue(jsonData.categories[0].category_id);
} else {
Ext.getCmp('category_id').setValue("");
}