通过按钮模拟点击动作列
Emulate click on actioncolumn via press button
您好,我有带操作列的网格,我想在按下键盘上的按钮时模拟点击操作列。当我在控制台中按 "Del" 时:Uncaught TypeError: Cannot read 属性 'getEl' of undefined.
key: 46,
fn: function(e) {
Ext.ComponentQuery.query('bookGrid actioncolumn[action=del-book]')[0].getEl().dom.click();
}
但是当我模拟点击按钮时一切正常:
{
key: 13,
fn: function(e) {
Ext.ComponentQuery.query('bookcont button[name=createbook]')[0].getEl().dom.click();
}
},
如果您在删除键处理程序代码中设置了一个断点,下面这行代码在您的调试器中会显示什么?
Ext.ComponentQuery.query('bookGrid actioncolumn[action=del-book]')
是空的吗?如果是这样,则组件查询中的选择器有问题。您可以分享您的网格和操作列的配置吗?
以编程方式模拟 DOM 事件通常不是一个好主意(测试目的除外)。您可能只需要人工点击来执行操作,执行 onclick 处理程序的代码。
没有点击模拟,没有理由不能直接调用函数。
您好,我有带操作列的网格,我想在按下键盘上的按钮时模拟点击操作列。当我在控制台中按 "Del" 时:Uncaught TypeError: Cannot read 属性 'getEl' of undefined.
key: 46,
fn: function(e) {
Ext.ComponentQuery.query('bookGrid actioncolumn[action=del-book]')[0].getEl().dom.click();
}
但是当我模拟点击按钮时一切正常:
{
key: 13,
fn: function(e) {
Ext.ComponentQuery.query('bookcont button[name=createbook]')[0].getEl().dom.click();
}
},
如果您在删除键处理程序代码中设置了一个断点,下面这行代码在您的调试器中会显示什么?
Ext.ComponentQuery.query('bookGrid actioncolumn[action=del-book]')
是空的吗?如果是这样,则组件查询中的选择器有问题。您可以分享您的网格和操作列的配置吗?
以编程方式模拟 DOM 事件通常不是一个好主意(测试目的除外)。您可能只需要人工点击来执行操作,执行 onclick 处理程序的代码。
没有点击模拟,没有理由不能直接调用函数。