私は2つのフォームを持つウェブサイトを持っています。1つは検索用で、もう1つはログイン用です。エンターキーを使用して送信すると、ページの最初のフォームであるため、検索が常に呼び出されます。
私がやりたいのは、特定のテキストボックスにフォーカスがあるときに特定のボタンをクリックするようにEnterキーをプログラムすることです。
ログインフォームにasp:textboxとasp:buttonを使用しています。
フォーカスされているフォームを追跡するグローバル変数を作成します。
<script> var currentForm = document.forms[0];</script>
<form ...><input onfocus="currentForm = this.form;"/></form>
<form ...><input onfocus="currentForm = this.form;"/></form>
キーボードハンドラーをウィンドウにアタッチし、Enterキーを探し、それが押されたら、フォーカスされているフォームを送信します。
function globalKeyPressed(event) {
if (event.keyCode == ENTER) { // This is pseudo-code, check how to really do it
currentForm.submit();
}
}