我的表单中有一些文本框。我不知道他们的id
值。我想通过按Enter键将光标位置从现有光标位置更改为下一个字段
注意第一次光标可能处于不同的位置。
你的建议是什么?
答案 0 :(得分:2)
您没有提供标记,因此我无法对您的结构做出假设(例如,如果它们是兄弟元素,则使用.next()
)。因此,假设您有input
文本,请尝试此示例(对于jQuery 1.7 +)
$(document).ready(function() {
var inputs = $('input[type="text"]');
var len = inputs.length;
inputs.on('keyup', function(evt) {
if (evt.keyCode === 13) {
var currentInput = inputs.index($(this));
inputs.eq((currentInput < len - 1)
? currentInput + 1
: 0).focus();
evt.preventDefault();
}
});
});
当您在最后一次输入时按Enter键时,第一个输入将被聚焦(在循环中)。 请参阅jsfiddle示例:http://jsfiddle.net/8ruDV/