使用 Enter Keydown Event 移动到下一个输入

Use Enter Keydown Event to move to the next Input

我有一张大表格。当用户填写值时,我希望 enter 键采取与 tab 键相同的行为(即我想移动当按下 enter 键时,用户转到下一个 input 元素。

由于我的 HTML 表单分为多个部分的方式,我不能假设下一个 input 是当前输入的同级。此外,输入的 类 和 ID 不是连续的。

jQuery:

$("input").bind("keydown", function (event) {
    document.getElementById('keys').innerHTML = document.getElementById('keys').innerHTML + event.which + " ";
    if (event.which === 13) {
        event.stopPropagation();
        event.preventDefault();
        var e = $.Event("keydown");
        e.which = 9;
        $(this).trigger(e);
    }
});


JSFIDDLE

这会完成你的工作

 $("input").not($(":button")).keypress(function (evt) {
            if (evt.keyCode == 13) {
                iname = $(this).val();
                if (iname !== 'Submit') {
                    var fields = $(this).parents('form:eq(0),body').find('button, input, textarea, select');
                    var index = fields.index(this);
                    if (index > -1 && (index + 1) < fields.length) {
                        fields.eq(index + 1).focus();
                    }
                    return false;
                }
            }
        });

example