Javascript 为什么CSS选择器返回一个元素数组?

Javascript 为什么CSS选择器返回一个元素数组?,javascript,css,css-selectors,jquery,Javascript,Css,Css Selectors,Jquery,我正在编写非常基本的html,只想使用css选择器选择一个元素。但是,查询返回数组中的一个元素。我可以通过使用[0]索引数组来访问我的元素,但是有没有办法修改查询以仅返回我的元素 <input class='myInput' id='myId'> 在Chrome开发控制台中使用时,我看到: [<input class='myInput' id='myId'>] [] 而不是: <input class='myInput' id='myId'> 您可以

我正在编写非常基本的html,只想使用css选择器选择一个元素。但是,查询返回数组中的一个元素。我可以通过使用[0]索引数组来访问我的元素,但是有没有办法修改查询以仅返回我的元素

<input class='myInput' id='myId'>
在Chrome开发控制台中使用时,我看到:

[<input class='myInput' id='myId'>]
[]
而不是:

<input class='myInput' id='myId'>

您可以使用该方法,该方法总是从查询中返回第一个元素:

var element = document.querySelector('input.myInput');
jQuery没有直接的等价物,因此您必须使用
[0]
索引来实现这一点。

您可以使用该方法,该方法总是从查询中返回第一个元素:

var element = document.querySelector('input.myInput');

jQuery没有直接的等价物,所以您必须使用
[0]
索引来实现这一点。

jQuery返回带有jQuery对象的查询,jQuery对象是返回对象的数组。因此,要获得要查找的行,您需要做的是
$('input.myInput')[0]
获取数组中的第0个元素,在本例中只有一个,但要获取HTML元素,需要在选择器查询之后使用
[0]

仅供参考,了解获得相同输入的其他方法:

$('.myInput')[0];
$('#myId')[0];
$('input')[0];

或者使用
.first()
after而不是
[0]
的上述任何选择器,因为它们都获取返回的jQuery对象中的第一个元素。

jQuery返回带有jQuery对象的查询,jQuery对象是返回对象的数组。因此,要获得要查找的行,您需要做的是
$('input.myInput')[0]
获取数组中的第0个元素,在本例中只有一个,但要获取HTML元素,需要在选择器查询之后使用
[0]

仅供参考,了解获得相同输入的其他方法:

$('.myInput')[0];
$('#myId')[0];
$('input')[0];

或者以上任何一个选择器使用
.first()
after而不是
[0]
,因为它们都会获取返回的jQuery对象中的第一个元素。

这是否也应该标记为jQuery?@BjornJohnson:我不知道。现在还不清楚他是在使用原生API还是jQuery来选择元素。我差不多是在问他。我应该说“你在使用jQuery吗?”:)这也应该被标记为jQuery吗?@BjornJohnson:我不知道。现在还不清楚他是在使用原生API还是jQuery来选择元素。我差不多是在问他。我应该说“你在使用jQuery吗?”:)