Javascript 对隐藏和单击函数使用元素选择器的区别

Javascript 对隐藏和单击函数使用元素选择器的区别,javascript,jquery,show-hide,Javascript,Jquery,Show Hide,我无法理解为什么$('#mdiv input')[1].hide()不起作用,同时说明为什么$(“#mdiv input”)[1]。单击()工作正常吗 首先我想知道为什么?其次,如何使它在没有元素id的情况下工作 要查看我正在尝试什么以及我需要什么,这是因为您正在将jQuery对象转换为没有隐藏方法的DOM元素对象,您的第二个代码就像DOM元素对象具有类似jQuery对象的方法一样。您可以使用eq方法,该方法返回jQuery对象 $('#mdiv input').eq(1).hide(); 这

我无法理解为什么
$('#mdiv input')[1].hide()不起作用,同时说明为什么
$(“#mdiv input”)[1]。单击()工作正常吗

首先我想知道为什么?其次,如何使它在没有元素id的情况下工作


要查看我正在尝试什么以及我需要什么,这是因为您正在将jQuery对象转换为没有隐藏方法的DOM元素对象,您的第二个代码就像DOM元素对象具有类似jQuery对象的方法一样。您可以使用
eq
方法,该方法返回jQuery对象

$('#mdiv input').eq(1).hide();

这是因为您正在将jQuery对象转换为DOM元素对象,而DOM元素对象没有
hide
方法,您的第二个代码就像DOM元素对象有
click
方法一样工作。您可以使用
eq
方法,该方法返回jQuery对象

$('#mdiv input').eq(1).hide();

如果希望按id选择标记,可以使用

$('input[name="firstname"]')...
// or
$('input[type="text"][name="firstname"]')...

如果希望按id选择标记,可以使用

$('input[name="firstname"]')...
// or
$('input[type="text"][name="firstname"]')...

谢谢它很好用。我必须阅读一些材料才能清楚地区分DOM元素、元素id和jquery对象等:)谢谢。它很好用。我必须阅读一些材料才能清楚地区分DOM元素、元素id和jquery对象等:)