商店加载后如何制作fireEvent
itemclick
。
我有这个,但是不起作用:
pcfstore.on('load', function(){
//auto select first row;
Ext.getCmp('pcf_grid').getSelectionModel().select(0); // this works
//fire itemclick event
var grid= Ext.getCmp('pcf_grid');
grid.fireEvent('itemclick', grid, 0); //this doesnt work
});
这是我在网格视图中的
itemclick
事件:viewConfig: {
listeners: {
itemclick: function(dv, record, item, index, e) {
alert(record.data.code);
}
}
}
基本上,当网格加载时,它应该触发所选第一行的警报窗口
的网格。
最佳答案
itemclick
是View
的事件,而不是Grid
的事件。尝试使用:
grid.getview().fireEvent('itemclick', grid, 0);
顺便说一句,为什么不使用
selectionchange
代替。更新
如果同时具有
itemcontextmenu
和selectionchange
处理程序,可能会有些混乱。在这种情况下,我建议回到第一方并使用itemclick
事件。但是您的代码需要进行一些修改:
将
itemclick
事件分配给网格,而不是它的视图。当触发
itemclick
通过实际记录时,不是索引像这样:
grid.getSelectionModel().select(0);
grid.fireEvent('itemclick', grid, grid.getSelectionModel().getLastSelected());
这是fiddle来演示我在说什么。