查找下一个输入

时间:2019-06-30 20:09:14

标签: jquery html html-lists

在填充第一个输入后,我需要获取下一个输入以将光标置于其上。如果没有困难,请帮助!

jQuery:

$('input').keyup(function(){
  if($(this).val().match(/^\d{1}$/)){
    $(this).next('input').focus();
  }else{
    $(this).val('');
  }
});

HTML:

<ul id="block">
  <li><span data-tooltip="tooltip">text</span><input type="text"></li>
  <li><span data-tooltip="tooltip1">text1</span><input type="text"></li>
</ul>

1 个答案:

答案 0 :(得分:2)

.next()指的是紧邻元素(下一个),对您的输入而言不正确。

相反,请尝试:

if($(this).val().match(/^\d{1}$/)){
  $(this).closest("li").next("li").find("input").focus();
}

.closest("li")向上遍历,直到找到<li>。然后,我们用<li>得到下一个.next()。最后,我们可以使用<li>

input中挖掘.find("input")