我从jquery事件中获得了一些奇怪的结果,尽管我并不完全相信它是否是一个jquery问题。我希望有些jquery极客可以回答这个问题。
我的html页面中有以下代码段,用户在second
输入框中输入长度为9的字符串后,将焦点更改为first
输入框。这种自动对焦工作顺利。但是当我从first
输入框中按Tab键时,它总是跳过second
输入框并转到下一个html元素到second
输入框。
$("input.first").change(function (e){
var text = $(this).val();
if (text.length == 9){
$("input[id='second']").focus();
}
});
我尝试将tabindex
属性放到html元素中,但仍然继续其不当行为。但最后当我将change
事件更改为keypress
时,事件标签键开始按预期流动。
有没有人可以解释为什么会这样?谢谢你的回答。
答案 0 :(得分:1)
您可以手动为控件添加标签索引。我希望它能奏效。
$(function() {
var tabindex = 1;
$('input').each(function() {
if (this.type != "hidden") {
var $input = $(this);
$input.attr("tabindex", tabindex);
tabindex++;
}
});
});