テキスト入力フィールドで変更イベントを処理したい。しかし、マウスが要素にフォーカスを失ったときにイベントがトリガーされます。入力時の変更イベントがトリガーされます。jQuery でライブ イベントを行うにはどうすればよいですか?
私は使用しました:
jQuery('#element').on('change',function(){
//do the stuff
});
テキスト入力フィールドで変更イベントを処理したい。しかし、マウスが要素にフォーカスを失ったときにイベントがトリガーされます。入力時の変更イベントがトリガーされます。jQuery でライブ イベントを行うにはどうすればよいですか?
私は使用しました:
jQuery('#element').on('change',function(){
//do the stuff
});
keyup
、 、keydown
およびの 3 つのキー関連イベントから選択できますkeypress
。次の文字列を入力するとしますabc
。
$('#demo').on('keyup', function(e){
console.log(this.value);
});
// a
// ab
// abc
$('#demo').on('keydown', function(e){
console.log(this.value);
});
//
// a
// ab
$('#demo').on('keypress', function(e){
console.log(this.value);
});
//
// a
// ab
違いは、出力が (大まかに) 示すように、要素の値が更新される前keyup
にkeypress
応答することです。したがって、押されたキーを知りたい場合は、ハンドラーとハンドラーの両方で (押されたキーの を返す jQuery の正規化された keypress イベント) を使用し、それをプロパティに追加する必要があります。また、正しい を返しますが、更新された を取得するためにそのキーを手動で追加する必要はありません。e.which
keyCode
keypress
keyup
value
e.which
keyup
keyCode
value
使用する必要がありますkeyUp()
$( "#target" ).keyup(function() {
alert( "Handler for .keyup() called." );
});