Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/460.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用jQuery从事件绑定调用代码_Javascript_Jquery - Fatal编程技术网

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

Javascript 使用jQuery从事件绑定调用代码,javascript,jquery,Javascript,Jquery,我有一些代码绑定到jQuery中的blur事件: $('input[type="text"]').blur(function () { ... some code ... }); 有没有一种方法可以从javascript中的另一个函数调用相同的代码?或者,我是否需要将此代码与事件绑定分离以重用它?您可以使用.trigger调用事件 例如: $('input[type="text"]').trigger('blur'); // this would call the blur even

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

$('input[type="text"]').blur(function () {
    ... some code ...
});
有没有一种方法可以从javascript中的另一个函数调用相同的代码?或者,我是否需要将此代码与事件绑定分离以重用它?

您可以使用.trigger调用事件

例如:

$('input[type="text"]').trigger('blur');  // this would call the blur event
                                          // on all the elements
可以使用.trigger调用事件

例如:

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

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

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

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

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

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

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

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

// else where
theCode(); 
可以直接从代码的其他部分引发模糊事件。然而,这是一种间接的方法。我发现如果你直接调用预期的代码会更清楚

注:正如格多龙在评论中指出的,第一个模糊样本可以缩短为

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

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

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

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

// else where
theCode(); 
可以直接从代码的其他部分引发模糊事件。然而,这是一种间接的方法。我发现如果你直接调用预期的代码会更清楚

注:正如格多龙在评论中指出的,第一个模糊样本可以缩短为

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

即使可以直接调用分配给模糊事件的处理程序,我认为创建一个单独的函数更好。即使可以直接调用分配给模糊事件的处理程序,我认为创建一个单独的函数更好。$'input[type=text]'。blurfunction{theCode;};=>输入[type=text]'。模糊代码;$'输入[type=text]'.blurfunction{theCode;};=>$'输入[type=text]'。模糊代码;我更喜欢这种语法;我认为更清楚的是幕后到底发生了什么;我认为更清楚的是幕后到底发生了什么。