Tabelle defekt, wenn Zeilen eingeblendet werden
Kalle_B
- javascript
Hallöle,
ich habe eine Tabelle mit sichtbaren und (zunächst) verborgenen Zeilen. Wenn ich die verborgenen Zeilen per Klick sichtbar mache, zerreißt es im FF und Opera die Tabelle. Die bisher unsichtbare Zeile (4 Felder) drängt sich auf dem Platz des ersten Feldes, Rest der Zeile ist leer.
Der IE 6 macht es richtig.
<!-- [position] -->
<tr class=''>
<td class=sp01 title='ort_id=[1504]'>69488</td>
<td class=sp02>
<script>document.write( "<span class=cur_pointer title='ausklappen / einklappen' onClick='klappen( "1504" )'>" );</script>
Birkenau
<script>document.write( "</span>" );</script>
<i class='em08 cblau'>(3)</i></td>
<td class=sp03><b class=crot>So, 16.03.</b> </td>
<td class=sp04><b>Birkenauer Frühling</b> </td>
</tr>
<!-- [hidden_position] -->
<tr id='1504_0' style='display:none'>
<td class=sp01> </td>
<td class=sp02> </td>
<td class=sp03><b class=crot>So, 01.06.</b> 10:00</td>
<td class=sp04><b>Spargeltour</b> </td>
</tr>
...
document.getElementById( '1504_0' ).style.display = 'inline';
Wie kann ich den Fehler beheben?
MfG Kalle
Hallo Kalle_B,
Wie kann ich den Fehler beheben?
indem du erst mal das HTML in Ordnung bringst:
IDs müssen mit einem Buchstaben anfangen.
Attribute müssen in "" eingekleidet sein (class="xxx").
document.getElementById( '1504_0' ).style.display = 'inline';
hier würde ich nicht "inline" wählen, sondern "", also den Defaultwert.
Gruß, Jürgen
@@JürgenB:
IDs müssen mit einem Buchstaben anfangen.
Das ja.
Attribute müssen in "" eingekleidet sein (class="xxx").
Das nicht. Müssen nicht, sollten aber. [HTML401 §3.2.2]
Und einfache Anführungszeichen tun’s auch.
document.getElementById( '1504_0' ).style.display = 'inline';
hier würde ich nicht "inline" wählen, sondern "", also den Defaultwert.
Das ja. (Weil IEs den richtigen Wert 'table-row' nicht verstehen.)
Live long and prosper,
Gunnar
Hallo Gunnar,
Und einfache Anführungszeichen tun’s auch.
Erbsenzähler. (*g)
Gruß, Jürgen
Hallo Jürgen,
IDs müssen mit einem Buchstaben anfangen.
Habe ich gemacht, keine Änderung.
Attribute müssen in "" eingekleidet sein (class="xxx").
Ja, wenn sie Leerstellen enthalten class='lang hoch'
hier würde ich nicht "inline" wählen, sondern "", also den Defaultwert.
Das war der entscheidende Tipp. Danke.
MfG Kalle