Какое событие относится к вводу текста в текстовое поле с помощью jQuery

Только представьте формулу, в которой есть флажок и текстовое поле. Если кто-то начинает вводить в текстовое поле «бла-бла-бла что угодно», флажок должен быть отмечен сам собой. Есть ли событие, соответствующее вводу текста, или мне нужно использовать .focus?


person Andre    schedule 09.06.2010    source источник


Ответы (3)


события, которые запускаются при вводе:

  • onkeydown (jQuery: keydown)
  • onkeyup (jQuery: keyup)
  • onkeypress (jQuery: keypress)

Вы можете создать обработчик событий для любого из них, чтобы изменять или влиять на вводимые пользователем данные. Также помните о функциях .preventDefault() и .stopPropagation(), которые предотвращают поведение элемента по умолчанию или подавляют всплытие событий в DOM.

Ссылки: keyup, нажатие клавиши, нажатие клавиши, preventDefault (), stopPropagation ()

person jAndy    schedule 09.06.2010

Да, keyup() обработчик событий. См. http://api.jquery.com/keyup/.

person Ain Tohvri    schedule 09.06.2010

Если вы используете jQueryUI, функция автозаполнения имеет исходное событие, которое запускается при вводе текста, вставке ctrl + v и т. Д. У него также есть огромное преимущество, заключающееся в указании минимальной длины и задержки нажатия клавиши.

jQueryUI .autocomplete () довольно универсален и не только зарезервирован для сложных задач ajax.

$("input#vin").autocomplete({
  delay: 500,
  minLength: 17,
  source: function () {
    // Do your stuff here, keep in mind that you can't use $(this) inside this closure, as it is closed in of the autocomplete function. 
    decodeVinAjax(autofillVehicleDetails, $('input#vin').val());
  }
});
person Keyo    schedule 11.06.2012