2011-08-23 58 views
1
$(el).bind('blur keypress', function(event){ 


    if(event.type == 'keypress' && event.keyCode != 13) return; 
    alert(1); 

}); 

我得到的警告框,甚至當我按Escape,我不該;噸,因爲我只允許輸入...按鍵 - 逃生不起作用

回答

3

默認情況下「回報」將發送被調用的函數的值爲true,所以在這種情況下,默認事件被允許執行,所以無論按下哪個按鈕,您都會得到警報。如果你想只允許Enter那就試試這個於是改變回報語句返回假

+1

謝謝,工作:D – Alex

1

。檢查true條件它會使你更清楚。此外,也可以使用e.which而不是e.keyCode,它由jQuery抽象出來,使其兼容瀏覽器。

$(el).bind('blur keypress', function(event){ 
    if(event.type == 'keypress' && event.which == 13){ 
     alert(1); 
    } 
}); 
+0

event.which似乎沒有工作,它總是0 – Alex