我目前在使用 Internet Explorer 时遇到一个问题,即在页面上呈现文本字段时,聚焦于该元素无法正常工作。
在 Chrome 中,当我关注该文本字段并输入搜索快捷方式 (F2) 时,它会搜索网格。但此功能在 IE 中不起作用。谁能提出一个原因或一种适用于所有浏览器的替代方法?我无法使用 KeyMap 组件,因为它会导致我们的屏幕出现故障。
我用于快捷方式的代码如下:
xtype : textField,
fieldLabel : 'Name',
id : 'customerNameSearch',
name : 'customerNameSearch',
listeners : {
render: function (field) {
field.focus();
field.el.dom.onkeydown = function (event) {
if(event.code == "F2") {
performGridSearch(name)
}
}
}
上面的代码会在 Chrome 中触发网格中的搜索,但由于某种原因不会在 IE 中触发。
最佳答案
您可以使用 ExtJS 监听 keydown
事件,并使用 e.getKey()
或 e.getKeyName 在事件处理程序中测试 F2 键()
。监听器看起来像:
keydown: function (item, e) {
if (e.getKey() === e.self.F2)
alert(e.getKeyName());
}
这应该适用于 ExtJS 支持的所有浏览器,包括 IE。请记住在文本字段上设置 enableKeyEvents: true
。
这是一个fiddle适用于 Chrome 和 IE11。
关于javascript - Ext JS - 专注于文本字段不适用于 IE 中的渲染监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41768583/