JavaScriptでテキストボックス内のEnterキーでボタンをクリックする方法
JavaScriptでテキストボックス内のEnterキーでボタンをクリックする方法
onkeydown イベントを使用する
この方法は、テキストボックスに onkeydown
イベントを設定し、Enterキーが押された時に click
イベントを発生させるものです。
<input type="text" id="textbox" onkeydown="if (event.keyCode === 13) { document.getElementById('button').click(); }">
<button id="button">ボタン</button>
上記のコードでは、textbox
というIDを持つテキストボックスに onkeydown
イベントを設定しています。event.keyCode === 13
は、Enterキーが押されたかどうかを判断する条件式です。条件が真であれば、button
というIDを持つボタンの click
イベントを発生させます。
<input type="text" id="textbox">
<button id="button">ボタン</button>
<script>
const textbox = document.getElementById('textbox');
const button = document.getElementById('button');
textbox.addEventListener('keydown', (event) => {
if (event.keyCode === 13) {
button.click();
}
});
</script>
jQueryを使用すれば、より簡単にEnterキーでボタンをクリックするイベントを設定できます。
<input type="text" id="textbox">
<button id="button">ボタン</button>
<script>
$(document).ready(() => {
$('#textbox').on('keydown', (event) => {
if (event.keyCode === 13) {
$('#button').click();
}
});
});
</script>
これらの方法のいずれでも、テキストボックス内でEnterキーを押すとボタンをクリックするイベントを設定できます。
補足
- 上記のコードは、基本的な例です。必要に応じて、コードを修正して、さまざまな機能を追加することができます。
- 例えば、Enterキーが押された時に、テキストボックスに入力された値を取得して処理することができます。
- また、Enterキーが押された時に、他のイベントを発生させることもできます。
onkeydown イベントを使用する
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>Enterキーでボタンをクリックする</title>
</head>
<body>
<input type="text" id="textbox" onkeydown="if (event.keyCode === 13) { document.getElementById('button').click(); }">
<button id="button">ボタン</button>
</body>
</html>
addEventListener イベントを使用する
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>Enterキーでボタンをクリックする</title>
</head>
<body>
<input type="text" id="textbox">
<button id="button">ボタン</button>
<script>
const textbox = document.getElementById('textbox');
const button = document.getElementById('button');
textbox.addEventListener('keydown', (event) => {
if (event.keyCode === 13) {
button.click();
}
});
</script>
</body>
</html>
jQueryを使用する
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>Enterキーでボタンをクリックする</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
</head>
<body>
<input type="text" id="textbox">
<button id="button">ボタン</button>
<script>
$(document).ready(() => {
$('#textbox').on('keydown', (event) => {
if (event.keyCode === 13) {
$('#button').click();
}
});
});
</script>
</body>
</html>
テキストボックス内でEnterキーでボタンをクリックする他の方法
form
タグに onsubmit
イベントを設定すると、フォームが送信される前にイベントが発生します。このイベントを使用して、Enterキーが押された時にボタンをクリックするイベントを設定できます。
<form onsubmit="if (event.keyCode === 13) { document.getElementById('button').click(); return false; }">
<input type="text" id="textbox">
<button id="button">ボタン</button>
</form>
input
タグに type="submit"
属性を設定すると、そのテキストボックスが送信ボタンとして機能します。Enterキーが押された時に、そのテキストボックスに入力された値を送信することができます。
<form>
<input type="text" id="textbox" type="submit">
<button id="button">ボタン</button>
</form>
上記のコードでは、textbox
というIDを持つテキストボックスに type="submit"
属性を設定しています。Enterキーが押された時に、textbox
に入力された値が送信されます。
JavaScriptの keyCode
プロパティを使用して、Enterキーが押されたかどうかを判断することができます。
<input type="text" id="textbox">
<button id="button">ボタン</button>
<script>
const textbox = document.getElementById('textbox');
const button = document.getElementById('button');
textbox.addEventListener('keydown', (event) => {
if (event.keyCode === 13) {
// ボタンをクリックする処理
}
});
</script>
javascript button onclick