4

是否可以使用回车键移动到表单中的下一个输入字段?我也想使用标签,但回车键也不错。

仅供参考 - 我确实有几个文本区域,我需要在输入时使用回车键返回。这会是冲突吗?

谢谢你。埃里克

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 回答