Подтвердить что ты не робот

Обнаружение изменения значения ввода [type = text] в jQuery

Я хочу выполнять функцию каждый раз, когда изменяется значение определенного поля ввода. Он почти работает с $('input').keyup(function), но ничего не происходит при вставке текста в поле, например. $input.change(function) срабатывает только при размытии ввода, поэтому как я сразу узнаю, когда текстовое поле изменило значение?

4b9b3361

Ответ 1

просто вспомните, что 'on' рекомендуется использовать для функции "bind", поэтому всегда старайтесь использовать прослушиватель событий следующим образом:

$("#myTextBox").on("change paste keyup", function() {
   alert($(this).val()); 
});

Ответ 2

Описание

Вы можете сделать это, используя метод jQuery .bind(). Проверьте jsFiddle.

Пример

Html

<input id="myTextBox" type="text"/>

JQuery

$("#myTextBox").bind("change paste keyup", function() {
   alert($(this).val()); 
});

Дополнительная информация

Ответ 3

Попробуйте это.. кредиты https://stackoverflow.com/users/1169519/teemu

для ответа на мой вопрос здесь. https://stackoverflow.com/questions/24651811/jquery-keyup-doesnt-work-with-keycode-filtering?noredirect=1#comment38213480_24651811

Это решение помогло мне продвинуться в моем проекте.

$("#your_textbox").on("input propertychange",function(){

   // Do your thing here.
});

Примечание: изменение свойств для более низких версий IE.

Ответ 4

вы также можете использовать события текстового поля -

<input id="txt1" type="text" onchange="SetDefault($(this).val());" onkeyup="this.onchange();" onpaste="this.onchange();" oninput="this.onchange();">

function SetDefault(Text){
  alert(Text);
}

Попробуйте это

Ответ 5

Попробуйте следующее:

В принципе, просто запишите каждое событие:

Html:

<input id = "textbox" type = "text">

Jquery:

$("#textbox").keyup(function() { 
    alert($(this).val());  
}); 

$("#textbox").change(function() { 
alert($(this).val());  
}); 

Ответ 6

Попробуйте следующее:

$("input").bind({
            paste : function(){
                $('#eventresult').text('paste behaviour detected!');
            }
})

Ответ 7

Используйте это: https://github.com/gilamran/JQuery-Plugin-AnyChange

Он обрабатывает все способы изменения ввода, включая меню содержимого (с помощью мыши)