json/ajax/php を使用してデータをフェッチする ext js に 2 つのリンクされたコンボ ボックスを作成しました。最初のコンボ ボックスで値 (自動車メーカー) を選択すると、2 番目のコンボ ボックスがそのメーカーのモデルで更新されます。たとえば、最初のコンボ ボックスでトヨタを選択すると、2 番目のコンボ ボックスが avensis、corolla、premio、ist などの値で更新されます。 .
初め。問題は、最初のコンボで「トヨタ」などのアイテムを選択し、次に 2 番目のコンボで「アベンシス」などを選択してから、メルセデス ベンツなどの別のメーカーに変更した場合です。Mercedes に C200、E500 などのモデルがある場合、それらは 2 番目のコンボに表示されますが、以前に選択された値「avensis」は最初のコンボで選択されたままです。その値をクリアするにはどうすればよいですか?
2番。返された json に値がない場合、2 番目のコンボ値は変更されません。返された json に null 値がある場合、2 番目のコンボを空にするにはどうすればよいですか? ここに私のコードのスニペットがあります:
xtype: 'combo',
name: 'auto_make',
id: 'auto_make',
fieldLabel: 'Auto Make',
store: auto_make_store,
queryMode: 'local',
displayField: 'name',
valueField: 'id',
listeners: {
"select": function(obj){
var makeid = obj.getValue();// value of selected combo item
Ext.Ajax.request({
url: '../includes/dhx_dataview.php?action=15&mk='+ makeid +'&sc=' + subid + '&ac=' + cat,
success: function (response) {
var data = Ext.decode(response.responseText).models;
auto_model_store.loadData(data);
//Do I clear/ refresh second combo here? How?
}
});
}
}
Thnx と rgds。