我希望在输入字段发生更改后立即发生某些事情,而不是在此输入未聚焦之后。有没有其他选择?
更新它也应该适用于用户不必实际单击键盘上的按钮的类型(如 HTML5 输入类型=数字/日期)
实际事件随控件的类型而变化。我整理了一些例子:
$(document).ready(function() {
function callback() { alert($(this).val()); }
$('input[type=number]').on('input',callback);
$('input[type=date]').on('input',callback);
$('input[type=text]').on('keyup',callback);
});
注意:如果您使用 CTRL+V 粘贴文本,该keyup
事件可能会触发两次。
注意2:右键单击-> 粘贴将无法识别。paste
事件也无济于事,因为它会在文本更新之前触发。
keyup 事件在键盘按键被释放时发生。
$(document).ready(function() {
$('#i1').on('keyup',function() {
alert('Changed');
});
如果它是一个文本字段,那么您将需要使用.keyup
因为您想要 html5 字段,请尝试.click
应该为那些number
不确定的领域工作date
。
在这里使用 on("keyup") 是演示。
类似的东西?
$(document).ready(function() {
$('#i1').on('keyup',function() {
alert('Change has been recognised!');
});
$('#i1').on('paste',function() {
alert('Change has been recognised!');
});
});