Jquery绑定事件

时间:2009-12-01 13:39:23

标签: jquery events bind

我有以下代码:

$('#form_field, #button').bind('change click', function() {
// take action
});

工作正常。但是,我想在'#form_field'使用'change'时触发相同的操作,'#button'使用'click'(而不是'#form_field'使用'click')。

我知道可以使用以下代码完成:

$('#form_field').bind('change', function() {
// take action
});

$('#button').bind('click', function() {
// take action
});

但是,我不想重复函数内部的所有代码(//采取行动)。它看起来效果不佳,每次我对它进行更改时我都需要编辑两次。

有什么想法吗?

提前致谢

3 个答案:

答案 0 :(得分:12)

怎么样:

var myCoolFunction = function() {
  // take action
};
$('#form_field').bind('change', myCoolFunction);
$('#button').bind('click', myCoolFunction);

...

答案 1 :(得分:3)

这应该可以解决问题:

$('#form_field').bind('change', takeAction);

$('#button').bind('click', takeAction);

function takeAction () {
    //take action
};

答案 2 :(得分:0)

我不太确定找到解决方法的好方法。如果他们都做同样的事情,只需为他们做一个函数来调用所需的事件。