簡體   English   中英

Javascript:如何將最后兩個字符輸入textarea?

[英]Javascript : How to get the last two characters typed into a textarea?

獲取鍵入textarea框的最后兩個字符的最佳方法是什么?

我需要輸入最后2個字符而不是整個字符串的最后兩個字符。

感謝幫助!

您需要捕獲textarea上的keypress事件,然后記錄按下的鍵。 請注意,這將捕獲箭頭鍵,shift,alt等,所以如果你只想要字符,你需要過濾掉它們。

簡單的例子:

var keyPresses = [];
textarea.onkeypress = function(ev){
   ev = ev || window.event;

   var key = ev.keyCode || ev.which;
   keyPresses.push(key);
}

這是一個用jQuery做的演示,同時顯示輸入的最后兩個字符: http//jsfiddle.net/Ender/5gUHb/

來源:

var keys = [];
$('#target').keypress(function(e) {
    keys.unshift(e.which);
    update();
});

function update() {
       $('#last')
           .prepend($('<li/>').text(String.fromCharCode(keys[0])))
           .children(':eq(2)').remove();
}

此演示捕獲文本區域上的按鍵事件,將值移至數組上(因為索引表示自按下該鍵后已按下的鍵數),然后更新顯示。

顯示更新只是將數組中的第一個值推送到<ul>的頂部,並刪除列表中索引2處的子項(如果有)。

另外請注意,由於jQuery處理.keypress() ,您不必過濾掉修飾符或箭頭鍵。

更新請參閱Tim Down對我的回答的評論,以解釋應該進行哪些過濾。 根據Chrome中的快速測試,我最初的注意事項是錯誤的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM