【发布时间】:2011-03-21 22:20:01
【问题描述】:
我编写了一个 php 页面,该页面将 mysql 数据库中的信息整齐地显示到表格中。我想用 onLoad 事件处理程序隐藏空表行。
这是一个示例表,其中包含在没有内容时隐藏<td> 的代码。但我只能让它使用不同的 ID:
<script type="text/javascript">
function hideTd(id){
if(document.getElementById(id).textContent == ''){
document.getElementById(id).style.display = 'none';
}
}
</script>
</head>
<body onload="hideTd('1');hideTd('2');hideTd('3');">
<table border="1">
<tr>
<td id="1">not empty</td>
</tr>
<tr>
<td id="2"></td>
</tr>
<tr>
<td id="3"></td>
</tr>
</table>
</body>
我想要做的是使用<td>s 的类来实现同样的事情,同时只引用该类一次,而不是引用我想要删除的每个 id,这甚至不适用于我的动态内容。我尝试使用此代码:
<script type="text/javascript">
function hideTd(){
if(document.getElementsByClassName().textContent == ''){
document.getElementsByClassName().style.display = 'none';
}
}
</script>
</head>
<body onload="hideTd('1');">
<table border="1">
<tr>
<td class="1">not empty</td>
</tr>
<tr>
<td class="1"></td>
</tr>
<tr>
<td class="1"></td>
</tr>
</table>
</body>
但它不起作用。它应该隐藏具有指定类的空<td>s。如何使用类而不是 ID 隐藏空的 <td>s?
【问题讨论】:
-
我已经发布了一个答案,如果 getElementsByClassName 不存在,该函数可以作为后备
标签: javascript webforms html-table dynamic-data