実現したいこと
javascript,JQueryでエンターキーを疑似的に送信させたい
発生している問題・分からないこと
以下の参照ソースコード(1or2)で試してみても、反応がありません。
(testボタンを押下することで、search-noテキストボックスにaを入力させようとしています)
なお、参照ソースコードでは、エンターではなくとりあえずaを疑似的に押下させようとしています。
該当のソースコード
javascript
1<script> 2 $("#test").on("click", function() { 3 // 1 4 var KEvent = new KeyboardEvent("keydown", {keyCode: 40}); 5 /* キーの押下のイベントを発生させる */ 6 const textAreaEl = document.querySelector($("#search-no")); 7 textAreaEl.dispatchEvent(new KeyboardEvent('keydown', { 8 key: 'a', 9 })); 10 // 2 11 var enterEvent = new KeyboardEvent('keydown', {key: 'a', bubbles: true, cancelable: true}); 12 $("#search-no").dispatchEvent(enterEvent); 13 }); 14</script>
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
aキーの疑似押下にはならず、反応が何もされない。
補足
特になし
<script>
$("#test").on("click", function() {
// テキストボックスの要素を取得
const textAreaEl = document.querySelector("#search-no");
// 'a'キーの押下イベントを作成
var aKeyEvent = new KeyboardEvent('keydown', {
key: 'a',
bubbles: true,
cancelable: true
});
// イベントをテキストボックスにディスパッチ
textAreaEl.dispatchEvent(aKeyEvent);
});
</script>
回答ありがとうございます。試してみたのですが、#search-noにaが挿入されませんでした。