首页 > 解决方案 > 替代将首先触发的 onchange 事件

问题描述

我的站点上有一个select元素,当它发生如下变化时,我会在 JS/jQuery 中触发一个事件:

$("select#quantity").on("change", function(){
    //do stuff
})

但是,您要么需要再次单击选择框,要么在更改完成后等待片刻以使此事件发生。

有没有办法早点触发?就像他们选择了一个选项而不点击退出选择框一样。

标签: javascriptjquery

解决方案


是的,因此您可以使用input输入值更改后立即发生的事件。

$('#quantity').on('input', function (e) {
  console.log(this.value);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id="quantity">
  <option>1</option>
  <option>2</option>
  <option>3</option>
  <option>4</option>
</select>


推荐阅读