Всем доброго времени суток.
Версия 7.10.
Сделал обработчик для нажатия клавиши Enter вот таким образом:
onEntityInitialized: function() {
this.callParent(arguments);
var keyMap = new Ext.util.KeyMap({
target: Ext.select("тут id элемента"),
key: Ext.EventObject.ENTER,
fn: this.onSearchPressEnter,
scope: this,
binding: keyMap
});
},
onSearchPressEnter: function() {
console.log("Test");
},
Инструкцию взял отсюда: https://community.terrasoft.ru/forum/topic/15140#comment-58515
Проблема в том Test выводится в консоль аж 5 раз. Возможно ли сделать этот вывод только один раз, и чтобы при этом сохранялась возможность сделать вызов onSearchPressEnter повторно?
В комментариях той темы есть инструкция, но там блокируется возможность вызова при повторном нажатии клавиши.
Не хотелось бы вызывать одно и то же по нескольку раз, поскольку в onSearchPressEnter вообще говоря предполагаются запросы, в т.ч. к сервисам.
UPD. Разобрался, элемент по id неправильно находился, из-за чего в target оказывалось сразу несколько элементов.