があった場合、私はいくつかの入力を取り巻く<form>
要素を持って提出:フォームは一つだけ入力
<form>
<div class="tr" id="widget306">
<div class="td col-grab">
<button type="button" class="button grab formwidget" id="widget611">m</button>
</div>
<div class="td col-name">
<input type="text" name="name" value="target volume profile 1" id="widget607" class="formwidget textbox">
</div>
<!-- ... etc ... -->
</div>
</form>
私は要素(標準に焦点を当てながら、ユーザーがEnterキーを押すと、フォームの提出イベントをトリガしたいと思います(<form>
タグで囲まれた入力要素の動作)、Enterキーを押すと何も起こりません(fiddle)。 1つの入力要素を除くすべての要素を削除すると、コードが機能し、Enterキーを押してフォーム送信(fiddle)をトリガーするという予想される動作が得られます。
複数のフォームがある最初の例では、希望の動作(フォームを送信するEnterキーを押す)を取得するにはどうすればよいですか?
注:私はサファリ5.1でこの同じ動作を発見した、クロム17、Firefoxの9、およびIE 9が
明確化:私はちょうどそれをいくつかのJavascriptを投げることができます知っているが、私がしたいですマークアップだけでそれを解決してください。
更新:あなたが参考にして指摘してくれたように、私は<input type=submit>
を追加して目的の動作を得ることができます。問題は、ユーザーに送信ボタンが表示されないようにすることです。リターンを押したときにブラウザが提出しませんので、私はちょうど、そのdisplay
none
に設定することはできませんので、私はQUnitから借用し、次のように設定します。
HTML:
<input type=submit class=hide-me />
CSS:
を.hide-me {
position: absolute;
left: -10000px;
top: -10000px;
}
どこでも ''のようなボタンはありません。 – Gabe
良い点、何らかの理由で、私が送信ボタンを望んでいないにもかかわらず、私はpress-enter-to-submit機能のためにそれを必要とします。 – aaronstacy