7

keypressイベントで最終結果を得ることが可能かどうか疑問に思っていましたか?しかし、これをJavaScript keypressイベントテキストエリアの終了値を取得

input.addEvent("keypress", function (input) { 
    var previous_result = this.value; 
    var end_result = this.value + input.key; 
}); 

:ユーザーがtextearaでテキスト編集を行っているが、私はMooToolsのライブラリを使用して、同様の何かをする方法を書かれている後を有効にしているため、現在、私はkeyupを使用しています 入力要素の値が「空の文字列」ではないと思われる場合に & & Backspaceキー例えばバックスペースなどの特殊キーを扱う場合、この方法は、恐ろしいであるか、またはユーザがCTRL + を使用することを選択した場合。

私はkeyupイベントがトリガ前に、Googleの検索エンジンは、XMLHttpRequestをを送信し、ページを変異を観察しているので、私は興味があります。 さらに、keypressの高級感を享受しながら、テキスト全体を削除するという問題を解決するために使用する入力が管理されます。

ありがとうございます!

+0

'keydown'を使用しますか? –

+0

@ExplosionPills:試してみましたが、値は 'keydown'の実際の結果より遅れています。< – User2121315

答えて

9

これはそれを動作させるだろう。

input.addEvent("keypress", function (input) {  
    setTimeout(function() { 
     input.value // returns the updated value 
    }, 0);  
}); 

ライブデモ:http://jsfiddle.net/yQQ5P/(私はMooToolsはを知らないとして、私は、組み込みのAPIを使用)

をので、あなたはゼロを使用しますタイムアウトは収量として働く。これにより、ブラウザのUIスレッドは入力の値を更新することができます。

+0

これでコードをエンベロープして、それは魅力のように機能します、hvala puno! – User2121315

関連する問題