2012-11-23 43 views

回答

6
$(':input').on('change keypress', onInputChange); 
3
$(':input').on("change keypress", function() { 
    onInputChange(); 
}); 

另外:可以避开匿名函数你表壳和只做:

$(':input').on("change keypress", onInputChange); 
3

相信这要做诀窍:

$(':input').on('change keypress', onInputChange); 

注意这代码假设onInputChange要么不担心this上下文或event变量,或者它说明它们。您也可以使用以下方法:

$(':input').on('change keypress', function() { 
    onInputChange(); 
}); 
+2

无论语法如何,上下文和事件都会传递到该函数。 - > [** proof **](http://jsfiddle.net/acX4s/3/) – adeneo

+0

没有提及'this' – anmarti

+0

@ adeneo - 这是正确的。我并不是暗示它们在任何情况下都不会被传递到函数上。 OP的问题使得它看起来像是在将另一个函数的'onInputChange'方法包装起来的原因,可能是因为'onInputChange'绑定到另一个需要使用'this'的对象,而不是它作为对输入对象的引用。我只是想指出在这种情况下应该使用匿名函数。 –

相关问题