jQuery .change()函数在数字输入时严重延迟

时间:2017-12-07 22:04:28

标签: javascript jquery ajax

我在JQuery中的.change()函数与类型"数字"的输入有问题。 快速而肮脏的模型可以解决问题:
JSfiddle:https://jsfiddle.net/vtuk69bj/

$('#testInput').change(function(){
$('#testDiv').html($('#testInput').val());
})

正如您所看到的,如果您使用输入内的箭头来快速增加/减少数字(甚至不那么快),在某些情况下,该功能会非常延迟。

我知道我可以使用像键盘或点击这样的东西,但这不会涵盖用箭头增加/减少的选项或直接输入数字本身。没有2-3 +不同的功能,有没有办法覆盖我的所有基地?

1 个答案:

答案 0 :(得分:2)

只要输入值发生变化,input事件就会触发。

$('#testInput').on('input', function() {
  $('#testDiv').html(this.value);
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="testInput" type="number" min="1" max="999">
<div id="testDiv">
  1
</div>