javascript - 来自 document.getElementsByClassName 的元素 ID

标签 javascript html getelementsbyclassname

对 JS/Ajax 来说相对较新,所以我可能在这里遗漏了一些明显的东西。比方说,在 javascript 的某个时刻,我运行 ajax 来获取一些具有特定类名的 div 元素。然后我想从这些元素中的每一个中检索 html id 标记并使用该信息做一些事情(比如填充元素),就像这样。

var divstopop = document.getElementsByClassName("popField"),x;
    for(x in divstopop){

    divstopop[x].innerHTML= x.id; //x.id or something?
}

这有可能做到吗?

最佳答案

使用in 不是您应该迭代元素数组的方式。您应该使用 .length 属性并使用数字索引:

for (var i = 0; i < divstopop.length; ++i) {
    // Get id property from element and set as innerHTML
    divstopop[i].innerHTML = divstopop[i].id;
}

随着ES6的引入,你也可以使用for ... of完成你想要的:

for (const node of document.getElementsByClassName("popField")) {
  node.innerHTML = node.id;
}

关于javascript - 来自 document.getElementsByClassName 的元素 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14619890/

相关文章:

vba、getElementsByClassName、HTMLSource的双引号不见了

javascript - antd中多列表中制作单独的单列行

javascript - Ul li 在 Less 或 jQuery 中使用 If 条件进行列计数

javascript - 从嵌入式 Web 获取ElementsByClassName

javascript - 拖放选择元素(谷歌浏览器)

ios - 如何在 Mobile Safari 日期输入中获取上一个/下一个/完成按钮?

JavaScript Tabs 替换类

JavaScript/XPath 错误

javascript - Cssnano 不删除重复项

javascript - 自调整 Javascript 倒计时