javascript - 如何为每个元素分配不同的 id
问题描述
我有两个列表,一个包含 span 元素的文本,我使用这个 forEach 循环分配:
spans.forEach(function(el) {
const span = document.createElement('span');
span.innerHTML = el;
list.appendChild(span);
})
如何使用另一个列表为列表中的每个跨度分配一个 ID?两个列表都包含相同数量的元素,id[0] 应该分配给 text[0] 等等。
解决方案
您可以使用 的第二个参数来做到这一点forEach
,如下所示:
let spans = ['one', 'two', 'three'];
let list = document.getElementById("list");
spans.forEach(function(el, i) {
const span = document.createElement("span");
span.innerHTML = el;
span.id = spans[i];
list.appendChild(span);
});
for (let child of list.childNodes) {
console.log(child);
}
<div id="list"></div>
推荐阅读
- python-3.x - 无法使用 boto3 在 Scaleway 上列出存储桶对象
- python - ValueError:无效的 API 调用。请参阅 Alpha_vantage 文档了解 TIME_SERIES_INTRADAY
- heap - AVL 树中“空”节点数量的 O 复杂度是多少?
- python - 芹菜工人 - 分离模式无法正确加载应用程序
- java - 如何使用 FirebaseUser 设置自定义声明?
- r - 无法将数据帧绑定到空数据帧
- node.js - nodejs,postgres,sequelize - 而不是获取文件名,而是尝试获取完整路径
- bash - youtube-dl 将所有播放列表视为空
- sql - 在 Oracle Discoverer 上,将要添加的一组帐户汇总到一个帐户中
- python - python importlib找不到具有绝对路径的模块