Jquery更改触发器的频率太高

时间:2014-03-04 16:04:55

标签: javascript jquery onchange

我正在使用jQuery 1.7.2并为这样的类获得了一个on change事件:

$(document).on('change', '.item_amount', function(){

});

同一页面上的许多选择都有该类,如果我改变其中一个选择,如果我更改其中一个选择,则更改事件会触发X次(X是具有该类的选择数量),但我只想要它触发一次,因为只有一个选择发生了变化。

这是正常行为还是我做错了什么?

修改

问题似乎在其他地方。包含该select的元素将被插入(Ajax调用),当其中一个插入到dom中时,将触发所有现有元素的change事件。

所以基本上我选择了1号产品来保存一些产品。选择产品时,HTML代码将插入到包含所有当前产品的div中。当发生这种情况时,触发该div中所有产品的更改事件。

2 个答案:

答案 0 :(得分:2)

使用this keyword来引用更改功能块中更改的当前元素。

this - > JavaScript或Native Dom元素。

$(this) - >您的jQuery对象

$(document).on('change', '.item_amount', function(){
    alert(this.value);
    console.log(this);
});

答案 1 :(得分:0)

设置。更改元素并将其作为参数传递给函数?