使用回车键事件移动到下一个输入

Use Enter Keydown Event to move to the next Input

本文关键字:下一个 输入 移动 事件 回车      更新时间:2023-09-26

我有一个大表格。当用户填写值时,我想为输入键采取与选项卡键相同的行为(即,当输入键被按下时,我想将用户移动到下一个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;
                }
            }
        });
示例