获取按键的Javascript"输入"输入类型文本上的事件

时间:2014-08-29 04:42:05

标签: javascript jquery css

Javascript获取按键“输入”事件输入类型文本

我有3个文本输入,1个下拉列表和10行。

对于3文本输入,第1行将具有_1的标识符,对于第2行,第1行将具有_2的标识符。

我想要实现的目标是:

Textfield1 ------>   left_1
Textfield2 ------>   center_1
Textfield3 ------>   right_1
DropdownList ---->   dd_1

当我在left_1上按Enter键时,我想将输入事件更改为center_1的“标签”,而如果我在center_1输入事件,则会选中到right_1

如果我在right_1输入活动,则会转到下一行left_2

如果您按right_1处的“标签”,通常会出现问题,它将重点关注dd_1

下一个关键问题是,我在表单中有一个提交按钮,如果我按任何一个表单输入,它将只提交表单。我尝试使用检查事件代码禁用输入并阻止默认但是这样做,我仍然无法更改我的输入以关注文本字段,如上所述

My Picture to describe question

JsFiddle on my Question

我需要在输入时第一行的最后一个输入处转到第2行。

2 个答案:

答案 0 :(得分:1)

你可以使用按键事件 例如:

var input = document.getElementById('test');
input.addEventListener('keypress', function(e) {
console.log(e.key);
if( e.key == 'Enter' ) {
...
}
});

答案 1 :(得分:1)

对于第一部分,如果文本框是按顺序的所有兄弟,例如

<input>
<input>
<input>
<input>

中间没有任何东西,那么你可以做这样的事情:

$("input[type=text]").keyup(function(e){

    if(e.keyCode == "13")
    {
        $(this).next().focus();
    }

})

JSFiddle