1. ホーム
  2. javascript

[解決済み】JS/jQueryでkeypress/keydown/keyupイベントをトリガーする?

2022-04-14 05:45:37

質問

JSやjQueryで、ユーザーがテキスト入力ボックスにテキストを入力するのをシミュレートする最も良い方法は何でしょうか?

I しない 入力ボックスに実際にテキストを入力したいので、すべてのイベント ハンドラ は、ユーザーが入力ボックスに情報を入力すると、通常トリガーされるものです。つまり、フォーカス、キーダウン、キープレス、キーアップ、およびブラーです。と思っています。

では、どのように実現するのでしょうか。

どのように解決するのか?

このように、どのイベントも直接呼び出すことでトリガーすることができます。

$(function() {
    $('item').keydown();
    $('item').keypress();
    $('item').keyup();
    $('item').blur();
});

これでやろうとしてることができるのか?

をトリガーする必要があります。 .focus() と、潜在的に .change()

特定のキーでキーイベントを発生させたい場合は、次のようにします。

$(function() {
    var e = $.Event('keypress');
    e.which = 65; // Character 'A'
    $('item').trigger(e);
});

キープレス・イベントについては、こちらで興味深い議論がなされています。 jQuery イベント キープレス。どのキーが押されたのか? 特に .which プロパティによるクロスブラウザ互換性に関して。