この入力がフォーカスされていない後ではなく、入力フィールドで変更が行われた直後に何かが起こることを望みます。代替手段はありますか?
更新ユーザーがキーボードのボタンを実際にクリックする必要がないタイプでも機能するはずです(HTML5入力タイプ=数値/日付など)
この入力がフォーカスされていない後ではなく、入力フィールドで変更が行われた直後に何かが起こることを望みます。代替手段はありますか?
更新ユーザーがキーボードのボタンを実際にクリックする必要がないタイプでも機能するはずです(HTML5入力タイプ=数値/日付など)
実際のイベントは、コントロールの種類によって異なります。いくつかの例をまとめました:
$(document).ready(function() {
function callback() { alert($(this).val()); }
$('input[type=number]').on('input',callback);
$('input[type=date]').on('input',callback);
$('input[type=text]').on('keyup',callback);
});
注: CTRL+V を使用してテキストを貼り付けると、keyup
イベントが2 回発生することがあります。
注 2: 右クリック -> 貼り付けは認識されません。テキストが更新される前にpaste
イベントが発生するため、イベントも役に立ちません。
keyup イベントは、キーボードのキーが離されたときに発生します。
$(document).ready(function() {
$('#i1').on('keyup',function() {
alert('Changed');
});
テキストフィールドの場合は、使用する必要があります.keyup
html5フィールドが必要なので、試してみてください.click
number
ものについてわからない分野で機能するはずdate
です。
ここで on("keyup") を使用すると、デモが表示されます。
そんな感じ?
$(document).ready(function() {
$('#i1').on('keyup',function() {
alert('Change has been recognised!');
});
$('#i1').on('paste',function() {
alert('Change has been recognised!');
});
});