每当用户在最后一个字段上按下 Tab 键时,我都会尝试更改焦点。我想将焦点设置在另一个输入字段上。

我有以下 javascript 代码:

$("#input2").keydown(
  function()
  {
    if(event.which == 9)
    {
      $("#input1").focus();
    }
  }
);

这是我的试用 html 代码:
<div id="inputArea1">
  <input id="input1" />
  <input id="input2" />
</div>

它似乎与 keyup 一起工作(改变焦点部分),但又一次我没有得到我想要的 keyup ..

我错过了什么?

最佳答案

您需要通过返回 false 来停止该事件。如果不这样做,则在切换到 input1 后会触发基本浏览器事件,这意味着焦点又回到了 input2

例如:

$("#input2").keydown(function(e){
  if(e.which == 9){
    $("#input1").focus();
    return false;
  }
});

关于javascript - JQuery 无法改变对 keydown 的关注,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4041177/

10-09 17:34