首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用jQuery获取元素的ID?

如何使用jQuery获取元素的ID?
EN

Stack Overflow用户
提问于 2010-07-14 01:11:50
回答 15查看 2.3M关注 0票数 1.6K
代码语言:javascript
复制
<div id="test"></div>
<script>
  $(document).ready(function() {
    alert($('#test').id);
  });  
</script>

为什么上面的方法不起作用,我该怎么做?

EN

回答 15

Stack Overflow用户

发布于 2010-07-14 01:13:12

$('selector').attr('id')将返回第一个匹配元素的id。Reference

如果匹配的集合包含多个元素,则可以使用传统的.each iterator返回包含每个If的数组:

代码语言:javascript
复制
var retval = []
$('selector').each(function(){
  retval.push($(this).attr('id'))
})
return retval

或者,如果您愿意变得更强大,您可以避免使用包装器,而使用.map shortcut

代码语言:javascript
复制
return $('.selector').map(function(index,dom){return dom.id})
票数 91
EN

Stack Overflow用户

发布于 2010-07-14 01:16:43

id是html Element的属性。但是,当您编写$("#something")时,它返回一个包装匹配的DOM元素的jQuery对象。要获取第一个匹配的DOM元素,请调用get(0)

代码语言:javascript
复制
$("#test").get(0)

在这个原生元素上,您可以调用id或任何其他原生DOM属性或函数。

代码语言:javascript
复制
$("#test").get(0).id

这就是为什么id不能在您的代码中工作的原因。

或者,按照其他答案的建议,使用jQuery的attr方法来获取第一个匹配元素的id属性。

代码语言:javascript
复制
$("#test").attr("id")
票数 42
EN

Stack Overflow用户

发布于 2013-12-06 00:46:09

上面的答案很棒,但随着jquery的发展..所以你也可以这样做:

代码语言:javascript
复制
var myId = $("#test").prop("id");
票数 26
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3239598

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档