如何为每个元素分配不同的ID

时间:2020-04-21 04:36:11

标签: javascript

我有两个列表,一个包含用于span元素的文本,我使用此forEach循环分配该列表:

spans.forEach(function(el) {
  const span = document.createElement('span');
  span.innerHTML = el;
  list.appendChild(span);
})

如何使用另一个列表为列表中的每个范围分配ID? 这两个列表包含相同数量的元素,并且id [0]应该分配给text [0],依此类推。

2 个答案:

答案 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);    
})