2012-11-23 45 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'的對象,而不是它作爲對輸入對象的引用。我只是想指出在這種情況下應該使用匿名函數。 –

相關問題