如何通过标记名称获取子节点

时间:2016-06-06 14:06:04

标签: javascript jquery html

我正在尝试访问子节点。到现在为止还挺好。我的代码是

o.toString()

其中i和j是循环值。

columns = document.getElementById('columns').children[0].children;

但我尝试按标签名称获取元素。让我们写一下:

collapseState = columns[i].children[j].children[2].style.display;

但它给出了错误。怎么做到这一点?

2 个答案:

答案 0 :(得分:1)

您的问题源于尝试使用HtmlCollection上不存在的功能。您需要抓取个人ParentNode才能使用getElementsByTagNamegetElementsByClassName个功能。

collapseState = columns[i].children[j].getElementsByTagName('blahblah');

collapseState = columns[i].children[j].children[someIndex].getElementsByTagName('blahblah');

答案 1 :(得分:0)

可能这可以帮到你

function getbytagname(parents_id, children_tag_name){
var c = document.getElementById(parents_id).children;
var x = [] ;
for(var i =0; i<c.length;i++)
 {
  if(c[i].tagName===children_tag_name){ // children_tag_name should be in capital, eg. "SPAN"
   x.push(c[i]);
  }
 };
return x;
}

这只是为了给你一个想法,你可以根据你的要求修改它