2013-12-22 41 views
0

我想在客戶按任意鍵後檢查一封電子郵件。這是我的代碼:原型:如何在按下某個鍵後獲取新的輸入值?

document.observe("dom:loaded", function() { 
    $('billing:email').observe('keypress', function(event){ 
     console.log(event.element().value); 
    }); 
}); 

如果我按「D」,日誌將打印「」。 如果按下「D」後按「S」,日誌將打印「D」。

如何獲取當前的實際輸入值?

回答

1

Try the input event instead。傳統的按鍵/上/下/按鍵事件在嘗試讀取輸入變化時可能會變得模糊不清。似乎keypress在字符打印之前觸發。但是你也會錯過其他的事件,比如用戶對文本的退格。 Quirks mode has the gory details.

+0

這是不是跨瀏覽器的事件。而且它在Chrome中不起作用。 – Anthony

+0

你沒有指定你想要的特定瀏覽器,但它在Chrome/IE中對我很有用。 http://jsfiddle.net/stofte/DpYBZ/ – Svend

1

嘗試它的keyup事件,也this設置爲事件發生的元素,所以你可以清理,

​​
相關問題