这段时间在做Web + C++ Server + Android的项目。周三写Web server界面,用ExtJS4.1 ComboBox实现级联时,在第1个ComboxBox的select事件中修改第二个ComboBox的store的参数,并重新load,刷新第二个ComboBox的显示。伪代码大体如下:
listeners {
select:function( combo, records, eOpts ) {
store2rd.setProxy({type:'ajax',url:'...', extraParams:{...},});
store2rd.load();
});
}
然后,在第二个的ComboBox中加侦听select事件的代码,准备根据其内容设置后面的component的内容,伪代码大体如下:
displayField : 'name',
valueField:'id',
listeners {
select:function( combo, records, eOpts ) {
console.log(records[0]);
});
}
其中,id序列是一个以大于1的数开始的序列。选择时,测试发现居然选择第一项时不触发select事件!change侦听事件也不行。最后,不得已侦听collapse事件,并以全局变量标记状态解决了这个问题