4

私は現在問題に直面しています。

ユーザーが記入するフォームが必要です。

field1: <input type='text' name='field1'>
field1: <input type='text' name='field1'>
<input type='button' value='Save' name='Save'>

そのため、ユーザーがフォームの最後のテキスト ボックスに入力したときに [保存] ボタンにフォーカスする方法が必要です。これにより、ユーザーが [Enter] ボタンをクリックしても保存イベントが実行されます。

これは通常自動的に発生しますが、ページに多くのボタンがあり、ユーザーがクリックして別のクリック イベント (望ましくない) を保存すると、問題が発生します。

私の質問は、ENTER ボタンがクリックされたときに何が起こるかを制御するにはどうすればよいですか、またはこのイベントを無効にする必要がありますか?

4

6 に答える 6

5

これを実現する方法はjavascriptを使用することであり、jQueryを使用することをお勧めします。

$('#mytextfield').change(function(e) {
    $('input[type=submit]').focus();
});

属性autofocus="autofocus"を追加することにより、HTML5で要素をオート​​フォーカスすることもできます。

小さなデモを見てください:http://jsfiddle.net/9WmQ5/

于 2012-09-12T13:36:57.607 に答える
2

フォーム内にボタンを配置する必要があります

<form>
<input type="submit" value='Save' name='Save'>
</form>

このようにEnterキーを押すと、イベントが実行されますremeber type = "submit"

于 2012-09-12T13:37:48.587 に答える
1

どのキーが押されたかをリッスンする関数を書くことができます

function keyPressListener(e) {
        if (e.keyCode == 13) {
                 // do something
    }
}

次に、入力テキストボックスに onkeypress 属性を追加します

onkeypress="keyPressListener(event)"
于 2012-09-12T13:39:14.900 に答える
0

これは解決に役立つ可能性があります

field1: <input type='text' name='field1'>
field1: <input type='text' name='field1' id='last-name'>
<input type='button' value='Save' id='save-btn' name='Save'>


<script>

$(document).ready(function(){
$('#last-name').blur(function(){ $('#save-btn').focus(); });

});

</script>
于 2012-09-12T13:37:04.740 に答える
0

JQueryを使わずに、

document.getElementById('idName').focus();

上記の行が使用され、要素にフォーカスします

于 2017-11-10T06:37:23.247 に答える