按Enter键时如何进入下一个文本框?

时间:2014-05-07 07:34:03

标签: javascript jquery

大家好,我正在学习Javascript,我想问你们,当我按下键盘上的输入按钮后,如何在输入文字后进入下一个文本框。谢谢

4 个答案:

答案 0 :(得分:2)

您可以使用.keyup()来跟踪用户在字符中完成键的时间,并e.keyCode来获取按下的键,如果它是13表示输入)然后使用.focus()来聚焦下一个文本框元素:

$('input[type="textbox"]').keyup(function(e) {
    if(e.keyCode == 13) {
        $(this).next().focus();
    }
});

<强> Fiddle Demo

答案 1 :(得分:0)

试试这段代码:

 $('#inputform').on('keydown', 'input', function (event) {
  if (event.which == 13) {
    event.preventDefault();
    var $this = $(event.target);
    var index = parseFloat($this.attr('data-index'));
    $('[data-index="' + (index + 1).toString() + '"]').focus();
 }

});

帮助Link

答案 2 :(得分:0)

我开发了一个包含enter事件的插件。

(function ($) {
    $.fn.enter = function (func) {
        this.bind('keypress', function (e) {
            if (e.keyCode == 13) func.apply(this, [e]);
        });
        return this;
    };
})(jQuery);

您可以这样称呼它:

$('#input1').enter(function(){ $(this).next().focus(); });

答案 3 :(得分:0)

您可以通过多种方式转到下一个字段,如此处的所有答案所示,但不要忘记分配实际NEXT的顺序。您可以使用TAB按钮从一个字段到另一个字段,并且您网站的布局可能并不总是符合您期望或想要的顺序。解决方案是将tabindex=""添加到您的字段中:

<input type="text" tabindex="1" />
<input type="password" tabindex="2" />
<input type="submit" value="Log In" tabindex="3" />