1
Hii howto覆蓋ExtJS4上的gridpanel中的itemclick?我有一個別名TABLEA這樣的GridPanel:如何在ExtJS4上的gridpanel中覆蓋監聽器
Ext.define('AM.test.TableA', {
extend: 'Ext.grid.Panel',
alias: 'widget.tableA',
initComponent: function() {
// tableA configurations
this.callParent(arguments);
}
});
而且我TABLEA控制器是這樣的:
Ext.define('AM.test.TableAController', {
extend: 'Ext.app.Controller',
init: function() {
this.control({
'tableA': {
itemclick: this.tableSelection
}
});
},
tableSelection: function(grid, record) {
console.log('tableA selection');
}
}
利用這種配置,當我點擊TableA中某一行,我得到消息「TABLEA選擇」在控制檯中。然後,我想延伸到TABLEA tableB的是這樣的:
Ext.define('AM.test.TableB', {
extend: 'AM.test.TableA',
alias: 'widget.tableB'
});
而且我tableB的控制器是這樣的:
Ext.define('AM.test.TableBController', {
extend: 'Ext.app.Controller',
init: function() {
this.control({
'tableB': {
itemclick: this.tableBSelection
}
});
},
tableBSelection: function(grid, record) {
console.log('tableB selection');
}
}
有了這個,當我點擊TableB中某行。我得到的消息「tableB的選擇」,然後「TABLEA選擇」像這樣在我的控制檯對話框:
tableB selection
tableA selection
順便說一句,我必須做在「tableB的」 TABLEA「重寫itemClick在?我不想在tableA上調用'itemclick'。
順便說一句,其中i必須在乙定義stopPropagation方法?在'tableB'或'TableBController'上? – martinusadyh