1. フォーム内に input タグが 1 つだけある場合、Enter キーを押すとフォームが自動的に送信されます。 Enter キーを押すと、フォームが自動的に送信されます。
<form id='form1' action='a1.jsp' method='post'> <input type='text' name='name' /> </form>
自動的に送信されたくない場合は、次のようにすることができます:
Enter キーを押しても、別の を追加すると、自動的に送信されません。 Yun の入力ボックスは非常に扱いにくいので、インターネットから 2 つの解決策を見つけました:
(1) を追加します。入力ボックスに入力して Enter キーを押します。後で送信されません:
<form id='form1' action='a1.jsp' method='post'> <input type='text' name='name' /> <input style='display:none' /> </form>
(2) onkeydown イベントを追加して Enter キーを押すと、イベントは表示されません:
<form id='form1' action='a1.jsp' method='post'> <input type='text' name='name' onkeydown='if(event.keyCode==13) return false;'/> </form>
ps:このイベントについては全く分かりませんkeyCode==13 分かりました、判定条件としては分かりましたが、まだ詳細が分かりません
よかったら教えてください。キャリッジリターンイベントを追加するには、onkeydownイベントに判定提出フォームを追加します:
<form id='form1' action='a1.jsp' method='post'> <input style='display:none' /> <input type='text' name='name' onkeydown='if(event.keyCode==13){gosubmit();}' /> </form>
2.自動提出が必要かどうかについて
テキストボックス(入力)でEnterキーを押したい場合があります。要素) を使用してフォーム (フォーム) を送信しますが、これが望ましくない場合もあります。たとえば、検索動作の場合、キーワードを入力した後に Enter キーを直接押してフォームをすぐに送信する必要がある場合、一部の複雑なフォームでは、フォームへの入力を完了する前に誤って Enter キーを押してフォームの送信をトリガーすることを避けたい場合があります。 。
これらの動作を制御するために、ブラウザーはすでにこれを行っています:
フォームに type="submit" のボタンがある場合、Enter キーを押します。キーが有効になります。
フォーム内に type="text" の入力が 1 つだけある場合は、ボタンの種類に関係なく、Enter キーが有効になります。
ボタンが input ではなく button で、タイプが追加されていない場合、デフォルトは IE では type=button、FX では type=submit です。
textarea や select などの他のフォーム要素は影響を受けず、ラジオ チェックボックスはトリガー ルールに影響しませんが、FX では Enter キーに反応しますが、IE では反応しません。
type="image" の入力は type="submit" と同じ効果を持ちます。なぜそのようなタイプが設計されているのかわかりません。背景を追加するには CSS を使用する方が適切です。画像。