遍历下一个输入元素--JQuery

时间:2015-02-06 14:38:08

标签: javascript jquery

我有以下HTML结构:

<label>
  <input id="Email">
  <p>...</p>
</label>
<label>
  <input id="randomID">
</label>

当某件事发生时,我希望输入id=Email之后的下一个输入获得focus()

这是我正在尝试的但它失败了,这意味着,没有给予关注:

$('#Email').nextAll('input').first().focus();

我不会总是知道下一个输入的ID,否则我知道这很容易

1 个答案:

答案 0 :(得分:1)

label添加另一个分支,导致nextAll找不到它。 nextAll()仅查看同一父级下的兄弟元素。

试试这个:

$('#Email').closest('label').next().find('input').first().focus();

由于focus()只会定位集合中的第一个元素,因此不需要first()

$('#Email').closest('label').next().find('input').focus();