我正在使用jQuery 1.7.2并为这样的类获得了一个on change事件:
$(document).on('change', '.item_amount', function(){
});
同一页面上的许多选择都有该类,如果我改变其中一个选择,如果我更改其中一个选择,则更改事件会触发X次(X是具有该类的选择数量),但我只想要它触发一次,因为只有一个选择发生了变化。
这是正常行为还是我做错了什么?
修改
问题似乎在其他地方。包含该select的元素将被插入(Ajax调用),当其中一个插入到dom中时,将触发所有现有元素的change事件。
所以基本上我选择了1号产品来保存一些产品。选择产品时,HTML代码将插入到包含所有当前产品的div中。当发生这种情况时,触发该div中所有产品的更改事件。
答案 0 :(得分:2)
使用this
keyword来引用更改功能块中更改的当前元素。
this
- > JavaScript或Native Dom元素。
$(this)
- >您的jQuery对象
$(document).on('change', '.item_amount', function(){
alert(this.value);
console.log(this);
});
答案 1 :(得分:0)
设置。更改元素并将其作为参数传递给函数?