2009-05-08 7 views
2

私はテキストエリアを持っています。それが変わったら、呼び出す関数が必要です。より良いオンキーはありますか?

ただし、フォーカスがテキスト領域を離れると、標準のonchangeイベントが発生します。私が本当に望むのは、ユーザーが入力を開始するとすぐにも偶数のためにです。

私はonkeypressにバインドできますが、マウスでテキストエリアにテキストを貼り付けることはできません。それはTabキーや変更しない他のキーを押すと起動します。

よりよい解決策はありますか?

+0

私は、これは醜いです知っているを使用し

は存在しません。 ..しかし、タイマーで状態をポーリングするのはどうですか? – elcuco

答えて

4

あなたは

onkeyup="SomeFunction();" 

編集を追加することができます:ああ、あまりにも速いです。私はマウスペーストでは見なかった。

編集2:

<script type="text/javascript"> 
    var ival = ""; 
    var checkup = window.setInterval("checkChange();", 100); 
    function checkChange() { 
     var nval = document.getElementById("test").value; 
     if (nval!=ival) { alert("change in the text"); ival=nval; } 
    } 
</script> 
<input type="text" id="test" name="test" value="" /> 

例から:onKeyPressイベントがちょうど貼り付けコード化された場合には、動作しますhttp://bytes.com/topic/javascript/answers/703623-capturing-event-when-user-right-click-paste-into-text-box

+1

は、中クリック(linux上のペースト)や右クリック→貼り付けをカバーしていません。 – elcuco

+0

あなたは 'onpaste'ハンドラを追加できます – exebook

0

- どこかのように改行文字が含まれていますので、あなたはそれが貼り付け知っていますよあなただけのテキストフィールドに入力した - 改行文字は改行だけをチェックし、onKeyPressイベント

関連する問題