Меню Закрыть

Jquery отследить изменение input

Периодически сталкиваешься, что необходимо обрабатывать изменения в поле input форм.

Например, запустить проверку и поиск, как только вводятся или вставляются данные в поле формы. Для обработки изменений в селектах прекрасно обходишься конструкцией:

А вот с текстовыми элементами возникает проблема что должна произойти потеря фокуса для события onchange или не отрабатывает onkeydown/onkeyup в случае копирования данных пользователем в поле. Но вот простое решение:

В общем как всегда это не работает в старых версиях IE8.

Вариант отслеживания изменения текста в input если с него не убирают фокус в jQuery

Вызывается или отслеживается JavaScript событие "change" (событие изменения формы).

version added: 1.0 .change( handler(eventObject) )

handler(eventObject)

Тип: Function()

version added: 1.4.3 .change( [eventData ], handler(eventObject) )

eventData

Тип: Object

Объект с данными, которые будут переданы в обработчик.

handler(eventObject)

Тип: Function()

version added: 1.0 .change()

Данный метод — это сокращение от .on( "change", handler ), и.trigger( "change" ).

Событие change выстреливает при изменение полей формы. Оно отслеживает поля ,

Пытаюсь сделать аналог вот такого блока (Прямые рейсы авиакомпании). Пишу логику фильтра у поля "поиск":

На каждое изменение значения в поле прохожу по списку маршрутов и скрываю те из них, в названии которых нет подстроки введённой в поле "поиск".

Подвесил обработчик на событие jquery change — всё работает но change наступает при потере полем фокуса, а мне нужно, чтобы обработчик запускался и тогда, когда фокус ещё на поле поиска.

Читайте также:  Установка мтс спутник тв своими руками

Рекомендуем к прочтению

Добавить комментарий

Ваш адрес email не будет опубликован.