GWT TextBox - Уведомление об изменении значения во время редактирования - PullRequest
5 голосов
/ 11 мая 2010

У меня TextBox на Panel, и я хочу получать уведомления при изменении значения TextBox.

Я пробовал следующие обработчики событий:

  • ChangeHandler
  • ValueChangeHandler
  • KeyPresshandler

Моя проблема в том, что ValueChangeHandler и ChangeHandler срабатывают только тогда, когда фокус покидает элементы управления. KeyPressHandler срабатывает корректно, но до того, как само TextBox увидит событие, это означает, что вызов getText() из моего обработчика событий обнаружит устаревшее значение.

Есть ли событие, которое будет работать точно так же, как KeyPressHandler, но будет запущено после того, как TextBox увидит событие?

РЕДАКТИРОВАТЬ: такое поведение наблюдается в Chrome и IE8 на Windows XP

Ответы [ 2 ]

7 голосов
/ 11 мая 2010

Попробуйте KeyUpHandler .

1 голос
/ 24 ноября 2014

Очень надежное (хотя и не очень элегантное) решение, которое улавливает ВСЕ изменения, включая копирование / вставку с помощью мыши или текстовые подсказки, вставленные с помощью виртуальной клавиатуры (например, клавиатуры ios 8), состоит в том, чтобы запустить таймер и проверить значение текстового поля в соответствующем интервале времени. Таймер останавливается на размытие (не забудьте сделать окончательную проверку на размытие).

Мне неизвестно о каком-либо "основанном на обработчике" решении, позволяющем перехватить все изменения в текстовом поле.

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