4

Enterキーを使用して、フォームの次の入力フィールドに移動することはできますか?タブも使いたいのですが、エンターキーもいいですね。

参考までに-私はいくつかのテキストエリアを持っており、それらが入力するときにリターンにエンターキーを使用する必要があります。これは対立になりますか?

ありがとうございました。エリック

4

2 に答える 2

6

入力時に循環させたいフィールドに「TabOnEnter」というクラスを追加するとします。

$(document).on("keypress", ".TabOnEnter" , function(e)
  {
    //Only do something when the user presses enter
    if( e.keyCode ==  13 )
    {
       var nextElement = $('[tabindex="' + (this.tabIndex+1)  + '"]');
       console.log( this , nextElement ); 
       if(nextElement.length )
         nextElement.focus()
       else
         $('[tabindex="1"]').focus();  
    }   
  });

//Hidden inputs should get their tabindex fixed, not in scope ;)
//$(function(){ $('input[tabindex="4"]').fadeOut();  })

前の回答ほどかわいくはありませんが、現在は機能しています:

http://jsfiddle.net/konijn_gmail_com/WvHKA/

このように、標準の HTML 機能 ( tabindex ) を使用して循環順序を決定します。非表示の要素は tabindex を削除する必要があります。

于 2012-04-12T21:52:22.630 に答える
0

暗闇で撮影 (テキストエリアが並んでいると仮定):

$(".myTextareas").keypress(function(e) {
    if(e.which == 13) {
        $(this).next('.myTextareas').focus();
    }
});
于 2012-04-12T21:49:25.890 に答える