javascript - 如何将特定 DOM 元素的编号记录到控制台中?

标签 javascript dom

我正在尝试记录 html 文档中具有 id “para”的元素数量,这里是到目前为止的代码

window.addEventListener("load",init);
function init(){

        var b = document.getElementById("para");

        console.log(b);

}

到目前为止,它只会记录元素本身,而不记录 html 文档中的元素数量

最佳答案

   var b = document.getElementById("para");

注意此类中的单数,它仅返回单个元素(或 null)。

如果您的文档格式良好,则只会有一个 ID 为 para 的元素。这是将 ID 与类分开的原因之一。

您有两种解决方案。

  • 不要使用 ID,而使用 class 或 data-* 属性
  • 使用document.querySelectorAll("#para")

在这两者中,我建议修复您的 HTML。

引用评论的演示代码

var list = document.querySelectorAll("#test-span");
console.log(list.length);
<span id="test-span">1</span>
<span id="test-span">1</span>
<span id="test-span">1</span> 

关于javascript - 如何将特定 DOM 元素的编号记录到控制台中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37493252/

相关文章:

javascript - 如何使具有多条件 if 函数的函数起作用?

javascript - forEach() 创建未定义的数组 (Javascript)

javascript - 我应该如何使用变量和 jQuery Dom 导航?

javascript - React 在按钮单击时动态添加 n 个 div 到页面

javascript - CSS 顶部和左侧位置在 IE 中不起作用

Javascript - 如何使用 'a' 作为变量使 'href' 元素成为链接

javascript - Extjs 网格 colspan 和行跨度

javascript - 提交子表单时家长对子窗口中断的引用

javascript - 如何将焦点设置到 'editableCellTemplate' 内使用的自定义指令中的文本字段?

javascript - `fetch` ,使用模式 `no-cors` 不会调用 Promise.then 回调