使用jQuery从事件绑定中调用代码

时间:2012-04-02 18:15:43

标签: javascript jquery

我有一些代码绑定到jQuery中的blur()事件:

$('input[type="text"]').blur(function () {
    ... some code ...
});

有没有办法从我的javascript中的另一个函数调用相同的代码?或者,我是否需要将此代码与事件绑定分开才能重用它?

3 个答案:

答案 0 :(得分:4)

听起来你想从模糊事件处理程序和其他地方调用一段代码。如果是这样,那么最好的方法是定义一个单独的函数并从两个地方调用它

var theCode = function () {
  ...
};

$('input[type="text"]').blur(function(){
  theCode();
});

// else where
theCode(); 

可以直接从代码的其他部分引发模糊事件。然而,这是一种间接的方法。如果你直接调用预期的代码,我会发现它更加清晰。

注意gdoron在评论中指出,第一个模糊样本可以缩短为

$('input[type="text"]').blur(theCode);

答案 1 :(得分:2)

您可以使用.trigger来调用此事件。

例如:

$('input[type="text"]').trigger('blur');  // this would call the blur event
                                          // on all the elements

答案 2 :(得分:2)

如果要调用它,只需在附加了blur事件的元素上调用blur方法。

$('input[type="text"]').blur();