Javascript Jquery对选择器$(';#标记字段';)和$(';输入[样式]';)的响应差异[0]

Javascript Jquery对选择器$(';#标记字段';)和$(';输入[样式]';)的响应差异[0],javascript,jquery,Javascript,Jquery,两者都选择正确的元素。但在这种情况下 $('#tag_field_2') $('input[style]')[0] 在以下情况下,响应在方括号中: $('#tag_field_2') $('input[style]')[0] 事实并非如此。为了能够对响应使用函数,我需要方括号。但是为什么呢?我想使用第二个选择器,但是 $('input[style]')[0].show(); 它给了我 Uncaught TypeError: undefined is not a functi

两者都选择正确的元素。但在这种情况下

$('#tag_field_2') 
$('input[style]')[0] 
在以下情况下,响应在方括号中:

$('#tag_field_2') 
$('input[style]')[0] 
事实并非如此。为了能够对响应使用函数,我需要方括号。但是为什么呢?我想使用第二个选择器,但是

$('input[style]')[0].show(); 
它给了我

 Uncaught TypeError: undefined is not a function
使用

基本上两者都相同。它抓取第0个元素来显示。可以使用
lt(1)
eq(0)
实现,因为两者都只选择第0个元素。

使用


基本上两者都是相同的。它抓取第0个元素来显示。可以使用
lt(1)
eq(0)
实现,因为两者都只选择第0个元素。

在jQuery对象上使用索引器时,它返回DOM元素对象,而不是另一个jQuery对象

请尝试此选择器:

$('input[style]:eq(0)').show(); 

在jQuery对象上使用索引器时,它返回DOM元素对象,而不是另一个jQuery对象

请尝试此选择器:

$('input[style]:eq(0)').show(); 
$('input[style]')[0]
返回匹配元素中第一个元素的dom对象,不能在dom对象上使用jquery方法和属性。需要使用
:first
:eq(0)
以第一个元素为目标:

$('input[style]:first').show(); 

$('input[style]')[0]
返回匹配元素中第一个元素的dom对象,不能在dom对象上使用jquery方法和属性。需要使用
:first
:eq(0)
以第一个元素为目标:

$('input[style]:first').show(); 


请提供HTML和jsfiddle请提供HTML和jsfiddle谢谢,这就成功了。我不知道如何决定哪一个答案是正确的。但我最后选择的那个解释得更详细一些。谢谢,这就成功了。我不知道如何决定哪一个答案是正确的。但是我最后选择的那一个解释得更详细一些。请编辑您的答案,并解释为什么这是一个好的解决方案。@Ben,基本上请参见
$('input[style]:lt(1)')。show()
和使用
:eq(0)”。
都是相同的,得到了吗?请编辑您的答案,并解释为什么这是一个好的解决方案。@Ben,基本上参见
$('input[style]:lt(1)')。show()和使用
:eq(0)”。
都是一样的,得到了吗?