我有两个列表,一个包含用于span元素的文本,我使用此forEach循环分配该列表:
spans.forEach(function(el) {
const span = document.createElement('span');
span.innerHTML = el;
list.appendChild(span);
})
如何使用另一个列表为列表中的每个范围分配ID? 这两个列表包含相同数量的元素,并且id [0]应该分配给text [0],依此类推。
答案 0 :(得分:3)
您可以使用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>
答案 1 :(得分:1)
假设您的秒表名为ids
spans.forEach(function(el,index) {
const span = document.createElement('span');
span.innerHTML = el;
span.id=ids[index];
list.appendChild(span);
})