我正在使用一个网络自动化工具来对付一个使用ExtJS网格的网站,并希望运行一些能够模拟一行“onlick”事件的JavaScript ...当我触发一个常规的onclick事件时各自的div标签,没有任何反应。
我做了一个'Ext.version'并获得了2.2,所以我在这里查找了Ext 2.2 API:http://extjs.edspencer.net/extjs/docs/但我无法理解它。我并不关心创建一个新的网格,而是操纵一个现有的网格......任何想法?
答案 0 :(得分:1)
您需要查看GridPanel上的事件。有一个rowclick
事件。然后,您可以在网格配置中将侦听器应用于网格:
new Ext.grid.GridPanel({
...
listeners: {
rowclick: function() {
// do some stuff
}
}
});
或事后:
var grid = new Ext.grid.GridPanel({
id: 'fooGrid'
});
Ext.getCmp('fooGrid').addListener('click', function(){
// do some stuff
})
但是,如果您想要触发onclick事件,如您所述,请执行以下操作:
var rowIndex = 5;
var grid = Ext.getCmp('fooGrid')
grid.fireEvent('rowclick', grid, rowIndex)
Source,Observable对象。几乎所有东西都继承自ExtJS 2中的Observable:
答案 1 :(得分:0)
我认为@WattsInABox在那里可以选择单个组件,但你是在'触发'click事件,而不是添加一个监听器。
ExtJS类存在于它自己的抽象泡泡中,而不是触发DOM事件'click'事件,你想要做的是触发特定行的SELECTION。选择第一行的代码如下所示:
Ext.getCmp('fooGrid').getSelectionModel().selectRow(0);
'fooGrid'是您想要触发操作的网格ID。