想象一下有一个复选框和一个文本字段的公式。如果有人开始在文本字段中输入“bla bla bla whatever”,则复选框应勾选自己。是否有与打字相对应的事件或我必须使用.focus?
答案 0 :(得分:18)
在键入时触发的事件是:
onkeydown
(jQuery:keydown
)onkeyup
(jQuery:keyup
)onkeypress
(jQuery:keypress
)您可以为任何修改或影响用户输入的事件创建一个事件处理程序。
还要注意.preventDefault()
和.stopPropagation()
函数,这些函数会阻止元素的默认行为或抑制事件冒泡DOM。
参考文献:keyup,keydown,keypress,preventDefault(),stopPropagation()
答案 1 :(得分:6)
是的,keyup()
事件处理程序。见http://api.jquery.com/keyup/
答案 2 :(得分:3)
如果你使用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());
}
});