假设我有
我想要的是maindiv内部我想要计算不存在元素(可能是div输入标签)。 可能会使用getElementByTagName()。 但问题是如何计算元素。
由于
答案 0 :(得分:5)
我认为你想要getElementsByTagName()
而不是getElementByTagName()
。
给定适当的参数,该函数将返回该特定标记名称(div,p等)的所有元素的列表。
在每个列表上都有一个属性.length
,它将为您提供计数。
来自mozilla docs:
// check the alignment on a number of cells in a table.
var table = document.getElementById("forecast-table");
var cells = table.getElementsByTagName("td");
for (var i = 0; i < cells.length; i++) {
var status = cells[i].getAttribute("data-status");
if ( status == "open" ) {
// grab the data
}
}
我同意@pranay_stacker; jQuery为您提供了一种获取信息的简单方法。
答案 1 :(得分:0)
要继续John's answer,如果我了解您要计算div
元素中的input
和id="maindiv"
子项,那么您可能正在寻找类似的内容:
var maindiv = document.getElementById('maindiv');
var count = maindiv.getElementsByTagName('div').length +
maindiv.getElementsByTagName('input').length;