1. ホーム
  2. jquery

[解決済み] HTMLフォームのEnterキーでボタンを押さずに送信する方法

2023-06-12 17:02:12

質問

HTML フォームで、1 つの submit 入力があり、さらに様々な button 要素もあります。ユーザーが 'enter' キーを押すと、実際にフォームが送信されると思うのですが、(少なくとも Chrome 15 では)その代わりに、最初の button (よりも HTML 内で早く発生するため)。 submit の入力よりも早い段階で発生するからでしょう)。

一般に、ブラウザが特定の submit の入力を優先させることはできませんが、私は本当に submit 入力よりも button 要素の上に入力します。これを動作させるために HTML に小さな調整を加えることができますか、それとも何らかの Javascript のアプローチを採用する必要がありますか?

HTMLの大まかなモックアップはこちらです。

<form action="form.php" method="POST">
    <input type="text" name="field1"/>
    <button onclick="return myFunc1()">Button 1</button>
    <input type="submit" name="go" value="Submit"/>
</form>

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

デフォルトの送信ボタンや入力を選択するためにJavaScriptは必要ありません。ただ、それをマークアップするために type="submit" でマークし、他のボタンは type="button" . あなたの例では

<button type="button" onclick="return myFunc1()">Button 1</button>
<input type="submit" name="go" value="Submit"/>