我希望在输入字段中进行更改后立即发生某些事情,而不是在此输入未聚焦之后。还有其他选择吗?
UPDATE 它也适用于用户不必实际点击键盘上的按钮的类型(如HTML5输入类型=数字/日期)
答案 0 :(得分:7)
实际事件随控件类型而变化。我把一些例子放在一起:
$(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
事件也无法帮助您,因为它会在更新文本之前触发。
答案 1 :(得分:1)
释放键盘键时会发生键盘事件。
$(document).ready(function() {
$('#i1').on('keyup',function() {
alert('Changed');
});
答案 2 :(得分:1)
如果是文本字段,则需要使用.keyup
因为您想要html5字段,请尝试.click
适用于number
字段,不确定date
个字段。
答案 3 :(得分:0)
使用on(“keyup”)这里是演示。
答案 4 :(得分:-1)
这样的事情?
$(document).ready(function() {
$('#i1').on('keyup',function() {
alert('Change has been recognised!');
});
$('#i1').on('paste',function() {
alert('Change has been recognised!');
});
});