2015-07-21 2 views
5

У меня есть поле формы с обработчиком, который я хочу вызвать после того, как пользователь намеренно принимает значение либо return/enter, либо вкладки в следующее поле. Я не могу использовать onBlur в этом случае, поскольку он, конечно, запускает, если пользователь или система размывают поле. Я только хочу, чтобы это было на клавиатуре.Угловое: событие «tab» keycode event не срабатывает

У меня есть это. Сначала у меня был enter, и он отлично работает. Но keycode==9 не вызывает обработчик. Фокус просто переходит к следующему полю.

ng-keyup="($event.keyCode == 13 || 
      $event.keyCode == 9) 
      && packages.submitNumber('add', packages.addTrackingNumber)" 

Есть ли способ, чтобы этот огонь на enter ИЛИ tab?

ответ

5

Кнопка Tab в html предназначена для следующего элемента фокусировки (кнопки, входы и т. Д.). Поэтому, когда вы запускаете кнопочный кнопочный кнопочный ключ, происходит следующая фокусировка. Чтобы избежать этого, вы можете попробовать использовать ng-keydown. См. working example

+0

Действительно, keydown работает на вкладке. – Steve

Смежные вопросы