2

我正在尝试创建一个表单,如果您在序列列上按回车键,则下面的单元格将被选中。有人可以为这项任务解决正确的 jquery 公式吗?

我在尝试

$('.serial').keypress(function(e) {
    console.log(this);
    if (e.which == 13) {
        $(this).nextAll('#serial').first().focus();
        e.preventDefault();
    }
});

http://jsfiddle.net/tYFcH/4/

4

3 回答 3

5

假设您想在任何输入中按回车键时移动到下面的单元格,请使用以下命令:

$('table input').keypress(function(e) {
    if (e.keyCode == 13) {
        var $this = $(this),
            index = $this.closest('td').index();

        $this.closest('tr').next().find('td').eq(index).find('input').focus();
        e.preventDefault();
    }
});

这是你的小提琴:http: //jsfiddle.net/tYFcH/13/

于 2013-01-23T01:31:29.333 回答
2
$('.serial').keypress(function(e) {
    console.log(this);
    if (e.which == 13) {
        $(this).closest('tr').next().find('input.serial').focus();
        e.preventDefault();
    }
});

http://jsfiddle.net/tYFcH/6/

于 2013-01-23T01:22:47.090 回答
0

next-in-dom 插件就是为此目的而编写的。免责声明:我写的

http://techfoobar.com/jquery-next-in-dom/

$('.serial').keypress(function(e) {
    if (e.which == 13) {
        $(this).nextInDOM('.serial').focus();
    }
});
于 2013-01-23T02:44:24.313 回答