如何从Jquery中获取真实对象?

19

如何从 JQuery 选择器结果中获取真实对象?例如:

 $("form").first().id != $("form").first().attr("id")

这意味着结果在某种程度上被 jQuery 包装/代理了,如何取消包装?


1
只是一个旁枝小节,.attr("id") 已经可以获取第一个元素的 id,不需要在其中添加 .first() - Nick Craver
2个回答

27

$("div")[0] 或者 $("div").get(0),将数字 0 替换为所需元素的索引。

如果您需要多个 DOM 元素,可以使用 .toArray() 方法。


7

左操作数不正确,因为在这里:

$("form").first().id

first() 返回的是一个 jQuery 对象,所以你不能在它上面使用 id(DOM 元素属性)。要获取被 jQuery 对象包装的 DOM 元素,你需要使用数组下标:

$("form")[0].id

或者使用 get() 方法:
$("form").get(0).id

以下内容应该评估为“true”:
$("form")[0].id == $("form").first().attr("id") 

因此,这应该是 false
$("form")[0].id != $("form").first().attr("id") 

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接