检查输入数组中的特定输入是否聚焦Jquery

时间:2018-06-27 12:55:04

标签: javascript jquery reactjs

我正在尝试测试输入数组中的特定输入是否集中。 在我的示例中,我想检查索引为[x-1]的输入是否集中,以便触发事件:

  if($('.App input')[x - 1].is(":focused")){
        alert('hello');
         }

我尝试了多种方法,但无法触发事件 在这个示例中,我在浏览器的控制台中遇到了例外情况

未捕获的TypeError:(0,_jquery2.default)(...)[(x-1)]。不是函数

1 个答案:

答案 0 :(得分:0)

您需要使用$($('.App input')[x - 1])以便将$('.App input')[x - 1]视为jQuery对象并可以应用is函数。另外,请注意,选择器是:focus而不是:focused

if($($('.App input')[x - 1]).is(":focus")){
  alert('hello');
}

您也可以将eq()用作

if($('.App input').eq(x - 1).is(":focus")){
   alert('hello');
}

这是一个简单的例子:

$(document).ready(function(){
  var x=2;
  setTimeout(function(){
    if($('.App input').eq(x - 1).is(":focus")){
     alert('hello');
    }
  },1000);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class='App'> 
<input type='text'/>
<input type='text' autofocus/>
<input type='text'/>