假设我有这个商店:
var statsType = Ext.create('Ext.data.Store', {
fields: ['id', 'grayedOutComboItem', 'type', 'typeClass'],
data: [{
'id': '',
'grayedOutComboItem': 'x-combo-grayed-out-item',
'type': '== Moyennes ==',
'typeClass': 'mean'
}, {
'id': '1',
'grayedOutComboItem': '',
'type': 'Moyennes journalières',
'typeClass': 'mean',
}, [...]
和这个听众的组合框:
[...]
listeners:
{
'beforeselect': function(combo, record, index)
{
return ("" != record.data.id);
}, [...]
它的工作原理是因为如果单击具有空id的项目,则组合框显示中不会发生任何事情。
但问题是,它仍会触发听众的事件。
所以当你点击它时仍然会触发东西。
如何禁用它,以便它不再触发任何东西!
:)
答案 0 :(得分:1)
要取消事件以使其不触发,请使用:
'beforeselect': function(combo, record, index, e) {
if( "" == record.data.id ) {
e.stopEvent();
}
}