onchange для кнопки выбора - PullRequest
0 голосов
/ 07 июня 2011

Мне нужно поймать несохраненные изменения.У меня проблема: если введена только одна строка и нет других событий, таких как нажатие вкладки или мыши, onchange не работает для навигации в браузере, например, Сценарий 1: введите число, а затем используйте кнопки браузера.Если это поле выбора, то Сценарий 2: выберите элемент с помощью клавиатуры (стрелки вверх / вниз), а затем используйте кнопки браузера.Это не работает.

Мой код jquery:

$(':input', document.frmName).live("change", function(e) { alert ('Modified'); });

Может кто-нибудь сказать мне, как решить эту проблему?Спасибо

1 Ответ

0 голосов
/ 07 июня 2011

Событие change не срабатывает до тех пор, пока фокус не покинет элемент управления, что, как вы заметили, может быть слишком поздно в вашем случае.

Обычный подход, когда вам нужно действительно проактивное уведомление, заключается виспользовать комбинацию различных событий - keydown, keypress, click - в сочетании с таймером опроса (для обработки вещей, для которых нет события, вызываемого надежно в кросс-браузерном режиме, например щелчок правой кнопкой мыши и вставка из контекстного меню).

...