jquery焦点第一个表单元素在最终的选项卡上

时间:2014-02-14 19:25:59

标签: javascript jquery html forms

我试图让光标跳转以专注于表单的第一个元素。由于某种原因,它不断关注第二个元素而不是第一个元素。我做了一个简单的表格。

<form>
  <input type="text">
  <input type="text">
  <input type="text">
  <input type="submit" value="Submit">
</form>

$('form').children().keydown(function(e) {
if (e.keyCode == 9 || e.which == 9) {
       if ($(this).is(':last-child')) {
         $(this).parent().children().first().focus();
       }
}
})

1 个答案:

答案 0 :(得分:2)

问题

Fiddle

请参阅控制台日志

当你按下最后一个元素上的tab focus第一个元素,然后执行tab操作,所以它转到第二个元素。

<小时/>

解决方案

使用event.preventdefault()return false停止标签操作。

Working Demo Working Demo

if ($(this).is(':last-child')) {
            $(this).parent().children().first().focus();
            e.preventDefault(); // or return false;
}