首页 > 解决方案 > 有没有办法从“getElementsByClassName('data')”中提取id?

问题描述

我想从具有特定类的所有元素中获取 id 列表。
在一切都是直观的完美世界中,它看起来像这样:

var list = document.getElementsByClassName("data").id  

这将返回 undefined 并以 NodeList 的格式返回。
我可以手动使用控制台在节点列表中搜索 id。
我绝不是专家,因此不胜感激。

标签: javascripthtml

解决方案


NodeList是元素的集合您可以将它们视为简单的元素数组。

因此,您可以通过索引访问它们:

console.log(document.getElementsByClassName("data")[0].id);
<div id="one" class="data">One</div>
<div id="two" class="data">Two</div>
<div id="three" class="data">Three</div>

或遍历它们:

const list = document.getElementsByClassName("data");
for (let i = 0; i < list.length; i++) {
  console.log(list[i].id);
}
<div id="one" class="data">One</div>
<div id="two" class="data">Two</div>
<div id="three" class="data">Three</div>


推荐阅读