getElementsByTagName(“tbody”)无效。另类?

时间:2013-06-18 09:35:31

标签: javascript

我想通过JS获得<tbody>标记。

尝试获取document.body.getElementsByTagName("tbody")document.getElementsByTagName("tbody")时出错。为什么呢?

Fiddle here

HTML

<tbody>
<tr>
    <td>1</td>
    <td>2</td>
    <td>3</td>
</tr>
</tbody>

2 个答案:

答案 0 :(得分:3)

使用

document.getElementsByTagName("tbody")

您需要使用tbody标记包裹table

See the demo.

答案 1 :(得分:3)

首先,将您的HTML包装在<table>

其次,关于你的jsFiddle:

var tbodies = document.getElementsByTagName("tbody");
tbodies.style.display = "none";

这不起作用。 getElementsByTagName返回元素列表。

如果您想定位第一个,请使用:

var tbodies = document.getElementsByTagName("tbody")[0];

或者如果您想要定位所有<tbody>,请遍历每个元素并将样式应用于每个元素:

for(var i = 0; i < tbodies.length; i++) {
  tbodies[i].style.display = "none";
}