我想通过模拟鼠标单击或从 Chrome 控制台中单击 fireEvent 鼠标单击来选择行,不幸的是,以前的所有尝试均不成功并且不起作用。
document.getElementById('#....').click()
等等..
之后,我发现我需要重写/使用 ext-all.js (4.0.2a) 中的火灾事件处理,但没有弄清楚如何在我的情况下明确地实现这一点。你能帮忙吗?
先感谢您。
所需状态的插图
我想通过模拟鼠标单击或从 Chrome 控制台中单击 fireEvent 鼠标单击来选择行,不幸的是,以前的所有尝试均不成功并且不起作用。
document.getElementById('#....').click()
等等..
之后,我发现我需要重写/使用 ext-all.js (4.0.2a) 中的火灾事件处理,但没有弄清楚如何在我的情况下明确地实现这一点。你能帮忙吗?
先感谢您。
所需状态的插图
您使用grid.getSelectionModel()
and 内部Ext.selection.Model
有方法select();
在这个FIDDLE中,我使用您的代码创建了一个演示。我希望这会帮助/指导你。
代码片段
Ext.application({
name: 'Fiddle',
launch: function () {
Ext.create('Ext.data.Store', {
storeId: 'gridStore',
fields: ['name', 'email', 'phone'],
data: [{
'name': 'Lisa',
"email": "lisa@simpsons.com",
"phone": "555-111-1224"
}]
});
Ext.create('Ext.grid.Panel', {
title: 'Grid manually selection',
store: 'gridStore',
columns: [{
text: 'Name',
dataIndex: 'name'
}, {
text: 'Email',
dataIndex: 'email',
flex: 1
}, {
text: 'Phone',
dataIndex: 'phone'
}],
renderTo: Ext.getBody(),
bbar: [{
text: 'Assign',
itemId: 'assignBtn',
disabled: true// See initially button is disabled I have enable when record has been selected.
}],
listeners: {
afterrender: function () {
this.getSelectionModel().select(this.getStore().getAt(0));
},
select: function (grid, rec, index) {
this.down('#assignBtn').setDisabled(false);
}
}
});
}
});