Какие события делаетогонь, когда его значение изменилось? - PullRequest
82 голосов
/ 15 октября 2010

Просто интересно, знает ли кто-нибудь, какие события вызывает элемент HTML5 <input type="number" /> при нажатии на стрелки вверх / вниз:

example number input

Я уже использую onblur, когда фокус покидает поле ввода.

Ответы [ 5 ]

61 голосов
/ 15 октября 2010

change будет событием, которое вызывается при изменении значения поля.

Я думаю, что событие HTML5 input также сработает.

34 голосов
/ 09 апреля 2013

Я обнаружил, что для jQuery следующий код охватывает ввод с клавиатуры, изменения колесика мыши и нажатие кнопок в Chrome, а также обрабатывает ввод с клавиатуры в Firefox

$("input[type=number]").bind('keyup input', function(){
    // handle event
});
6 голосов
/ 24 мая 2012

Я обнаружил, что onkeyup и onchange покрывают все в Chrome 19. Это обрабатывает прямой ввод значений, нажатие кнопок со стрелками вверх и вниз, нажатие кнопок и прокрутка колесика мыши. Только

onchangeэтого достаточно в Chrome, но другим браузерам, которые отображают поле только как текстовое поле, требуется привязка onkeyup, которая прекрасно работает для чтения нового значения.

Отдельное связывание события mousewheel было менее успешным.Событие сработало слишком рано - до обновления значения поля - и поэтому всегда давало предыдущее значение поля

3 голосов
/ 15 октября 2010

Событие onchange срабатывает при размытии, но событие oninput срабатывает при вводе.Может быть, вы захотите установить таймер на событие oninput и запустить событие onchange, когда пользователь перестанет печатать на секунду?

2 голосов
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...