ฉันได้สร้างกล่องคำสั่งผสมที่เชื่อมโยงสองกล่องในการดึงข้อมูลต่อ js โดยใช้ json/ajax/php เมื่อเลือกค่า (ผู้ผลิตรถยนต์) ในกล่องคำสั่งผสมแรก กล่องคำสั่งผสมที่สองจะอัปเดตตัวเองด้วยรุ่นภายใต้ผู้ผลิตรายนั้น เช่น การเลือกโตโยต้าในคอมโบแรกจะอัปเดตอันที่สองด้วยค่าต่างๆ เช่น avensis, corolla, premio, ist เป็นต้น
อันดับแรก. ปัญหาที่กำลังเกิดขึ้นคือเมื่อฉันเลือกรายการในคอมโบแรกเช่น 'toyota' จากนั้นเลือกตัวอย่าง 'avensis' ในคอมโบที่สอง จากนั้นเปลี่ยนเป็นผู้ผลิตรายอื่น เช่น Mercedes Benz หาก Mercedes มีรุ่นอยู่ข้างใต้ เช่น C200, E500 ฯลฯ รุ่นเหล่านั้นจะแสดงในคอมโบที่สอง แต่ค่า 'avensis' ที่เลือกไว้ก่อนหน้านี้ยังคงเป็นค่าที่เลือกไว้ในคอมโบแรก ฉันจะล้างค่านั้นได้อย่างไร
ที่สอง. หาก json ที่ส่งคืนของฉันไม่มีค่า ค่าคอมโบที่สองจะไม่เปลี่ยนแปลง ฉันจะทำให้คอมโบที่สองว่างเปล่าได้อย่างไรหาก json ที่ส่งคืนมีค่าเป็น null นี่คือตัวอย่างโค้ดของฉัน:
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?
}
});
}
}
ขอบคุณและ rgds