在jQuery中绑定多个事件

我有一个自定义的jQuery插件,它将change事件绑定到表单元素,在本例中是一些input元素。 change事件用于向某些其他组件指示发生了更改。

这应该是正常的。

但是,我遇到了将其他change事件绑定到相同input元素的需要 – 以便其他组件可以对事件起作用。 我不想替换插件的change ,之后只需运行一个附加function。

有没有办法在jQuery中绑定多个事件,或者,实现这个的最佳方法是什么?

您可以为同一事件绑定多个处理程序。 像往常一样绑定第二个更改:

 ​​​​​​​​​​​​​​​ ​$("#a"​).change(function() { alert("1"); }); $("#a").change(function() { alert("2"); });​ $("#a").change(); // alerts 1, then 2 

jQuery中的事件堆栈。 如果你这样做:

  

和:

 $(":button").click(function() { alert("click"); }).click(function() { alert("click 2"); }); 

两人都会开枪。 所以只需将另一个事件绑定到相关元素。 它不会覆盖第一个。