Ich habe eine PHP-Seite codiert, die Informationen aus einer MySQL-Datenbank sauber in Tabellen anzeigt. Ich möchte leere Tabellenzeilen mit einem onLoad Event-Handler ausblenden.getElementsByClassName funktioniert nicht
Hier ist eine Beispieltabelle mit Code, der eine <td>
verbirgt, wenn es keinen Inhalt hat. aber ich kann nur bekommen es mit unterschiedlichen IDs zu arbeiten:
<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>
was ich will ist tun, um eine Klasse verwenden für die <td>
s die gleiche Sache zu erreichen, während nur die Klasse einmal Referenzierung, und nicht Referenzierung jede einzelne ID das möchte ich entfernen, was bei meinen dynamischen Inhalten gar nicht funktioniert. Ich habe versucht, mit diesem Code:
<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>
aber es funktioniert nicht. es soll die leeren <td>
s verstecken, die die angegebene Klasse haben. Wie verstecke ich leere <td>
s mit Klassen, nicht IDs?
Ich habe eine Antwort geschrieben mit eine Funktion, die als Fallback funktioniert, wenn getElementsByClassName nicht existiert –