2012-10-22 52 views

回答

4

onkeypress屬性接受一個函數,而不是一個字符串。

element3.onkeypress = isNumberKeyDecimal; 

而且看一看的addEventListener功能爲首選的方式來處理事件偵聽器的功能。

尤其是,您可能希望查看event delegation,這將允許您在容器元素上擁有單個事件偵聽器,而不必將其綁定到您創建的每個輸入。

+0

+ 1,因爲+3不可能:+1 addEventListener(老式IE的'attachEvent'),+1使用包裝函數_not_,但直接分配處理程序,+ 1建議委派 –

2
element3.setAttribute("onkeypress", "return isNumberKeyDecimal(event)"); 
+0

請問這項工作?當您將屬性設置爲字符串時,瀏覽器(除IE以外的全局事件對象)是否會創建一個'event'變量? – Quentin

1

它應該被設置爲函數而不是字符串。

element3.onkeypress = function(event){return isNumberKeyDecimal(event)} 
+0

或者,您可以將此代碼編寫爲'element3.onkeypress = isNumberKeyDecimal;' –

+0

Dude ...完全。我是愚蠢的 – Delta

相關問題