当前位置: 首页 > 面试题库 >

Enter键的行为类似于Javascript中的Tab

吕向荣
2023-03-14
问题内容

我正在寻找一种创建表单的方法,按Enter键可使焦点移至页面上的“下一个”表单元素。我一直在网上找到的解决方案是…

 <body onkeydown="if(event.keyCode==13){event.keyCode=9; return event.keyCode}">

不幸的是,这似乎仅在IE中有效。因此,这个问题的实质是,是否有人知道适用于FF和Chrome的解决方案?另外,我宁愿不必将 onkeydown
事件添加到表单元素本身,但是如果那是唯一的方法,则必须这样做。

编辑:另外,我已经看到人们提出了这样的问题,即这不是好样式,因为它与用户习惯的表单行为不同。我同意!这是客户的要求


问题答案:

我使用了安德鲁提出的非常有效的逻辑。这是我的版本:

$('body').on('keydown', 'input, select', function(e) {
    if (e.key === "Enter") {
        var self = $(this), form = self.parents('form:eq(0)'), focusable, next;
        focusable = form.find('input,a,select,button,textarea').filter(':visible');
        next = focusable.eq(focusable.index(this)+1);
        if (next.length) {
            next.focus();
        } else {
            form.submit();
        }
        return false;
    }
});


 类似资料:
  • 问题内容: 我在Team和Player类之间有一种@OneToMany关系。我想在您的玩家之间保存一个Team对象。玩家的标识符由团队外键和列表索引组成,如下所示。我有一个这样的映射,因为我需要保存Team和您的Players同时吃饭。 所以,如果我使用以下 无论是否使用@ CollectionsOfElements,Player类都需要一个@Embeddable注释,而不是一个@Entity,这

  • 问题内容: 如何在Go中很好地解析程序参数列表并自动处理“ –help”和/或“ –version”(例如“ ”)? 问题答案: 我为您而做: 另请参阅https://play.golang.org/p/XtNXG-DhLI 测试:

  • 问题内容: 我想知道是否无论如何都要使JformattedTextField或jtextField表现得像自动柜员机钱输入。我的意思是,您从右至左输入,说输入10,您需要再按2再加上0,这样它将是10.00。程序从右到左输入时会自动输入小数点?如果未输入2 0,则为.10。这可能吗?如果我想使用该字符串进行计算,该如何返回给我?我尝试了抽象格式化程序,但是效果不是很好。我想用它来输入客户收到的金额

  • 当我使用命令列出所有分支时,我会看到的输出。 命令应该显示分支列表,就像对文件所做的那样。 这是我得到的输出: 如何获得git分支的默认行为?是什么导致分页输出? 我将ZSH与(其中Git没有任何内容)一起使用,我的如下所示:

  • 我正在阅读有关流的信息,发现我们可以使用setvbuf()函数来控制流......它写的是在行缓冲模式中,当遇到换行符时流将数据发送到文件中,在无缓冲状态下没有缓冲......所以我写了以下代码...... 所以我认为,因为这些是无缓冲流,所以输入应该在我写入屏幕后立即发送到标准输出。。。但程序在写入每一行后等待我按enter键,然后屏幕上只显示输出(由于fwrite)。。。我的问题是,当这些是无

  • 问题内容: 是否有像纯JavaScript 一样的功能? 我知道jQuery具有此功能来检查整数。 问题答案: 没有功能类型,但您可以添加自己的功能: 注意:由于不是检查数字的正确方法,因此不应使用它。