Я хочу выполнять функцию каждый раз, когда изменяется значение определенного поля ввода. Это почти работает с$('input').keyup(function)
, но ничего не происходит, например, при вставке текста в поле. $input.change(function)
срабатывает только тогда, когда ввод размыт, так как я сразу узнаю, когда текстовое поле изменило значение?
159
keyup
иpaste
события, и события?paste
- это только то, о чем я подумал, я предпочел бы прислушаться к определенным изменениям, чем думать о всех возможных путях.cut
).Ответы:
просто помните, что 'on' рекомендуется через функцию 'bind', поэтому всегда старайтесь использовать прослушиватель событий, например так:
источник
paste
хоть? Сначала я подумал, что это работает, только если мы вставим что-нибудьCTRL+V
.console.log()
вместоalert
. Было бы очень неприятно для Keyup дляalert
.Описание
Вы можете сделать это, используя
.bind()
метод jQuery . Проверьте jsFiddle .Образец
Html
JQuery
Больше информации
источник
Попробуйте это .. кредиты на https://stackoverflow.com/users/1169519/teemu
для ответа на мой вопрос здесь:
/programming/24651811/jquery-keyup-doesnt-work-with-keycode-filtering?noredirect=1#comment38213480_24651811Это решение помогло мне продвинуться в моем проекте.
Примечание: propertychange для более низких версий IE.
источник
Вы также можете использовать события текстового поля -
Попробуй это
источник
Попробуй это:
В основном, просто учтите каждое событие:
Html:
Jquery:
источник
выберите для предложения браузера
источник
Попробуй это:
источник
Используйте это: https://github.com/gilamran/JQuery-Plugin-AnyChange
Он обрабатывает все способы изменения ввода, в том числе меню содержимого (с помощью мыши)
источник
Эта комбинация событий работала для меня:
источник
НЕ ЗАБУДЬТЕ
cut
илиselect
СОБЫТИЕ!Принятый ответ почти идеален, но забывает о
cut
иselect
событиях.cut
срабатывает, когда пользователь обрезает текст (CTRL + X или щелчок правой кнопкой мыши)select
срабатывает, когда пользователь выбирает предложенную браузером опциюВы должны добавить их тоже, как таковые:
источник