如果没有Jquery或任何JavaScript库,我需要隐藏一个简单的html表的行,除了页面加载时的表头。
答案 0 :(得分:5)
如果你的桌子被正确标记了。 你可以这样做:
document.getElementById('yourtable')
.getElementsByTagName('tbody')[0]
.style.display = 'none';
然后把它放在'onload'事件上
您也可以在CSS + Javascript中通过将全局.js类设置为您的标记然后使用CSS选择器来完成。
html.js #yourtable tbody
{
display: none;
}
答案 1 :(得分:1)
没有特别需要诉诸javascript,你也可以通过CSS做到这一点:
#table_id tr
{
display:none;
}
这应隐藏所有TRs
而不是TH
。
答案 2 :(得分:1)
<style type="text/css">
.mytable tr {
display: none;
}
</style>
开玩笑吧。我们走了:
<table border="1" id="mytable">
<th>
<td>asd</td>
<td>asd</td>
</th>
<tr>
<td>asdkjas</td>
<td>asdasdjwa</td>
</tr>
<tr>
<td>asdkjas</td>
<td>asdasdjwa</td>
</tr>
</table>
<script type="text/javascript">
window.onload=function(){
hideTableRows();
}
function hideTableRows() {
var myTableRows = document.getElementById("mytable").getElementsByTagName("tr");
for(i=0;i< myTableRows.length;i++) {
myTableRows[i].style.display = "none";
}
}
</script>
我认为一个表需要行,不会只显示标题..我可以建议在表的开头添加一个空行,并将for循环中的“i”更改为1.这样第一行应该跳过。
HTH 马尔科