Hallo folgendes Problem verfolgt mich schon seit Wochen:
Ich möchte jede zweite Tabellenzeile gleichzeitig aus bzw. einblenden.
Ich habe eine Tabelle, in der Datensätze einer DB angezeigt werden.
Also für jeden
= 1 Datensatz.
Für diese Datensätze gibt es aber auch zusätzlich einen Infotext, der etwas mächtiger ausfällt und damit auch nicht direkt angezeigt werden soll. Nur bei Bedarf soll eine weitere Zeile unter jedem Datensatz erscheinen zb. bei <a onClick=ShowInfo()>Zeige Info</a>, jetzt kommt dat Problem:
So sieht es bis jetzt aus:
Name | Strasse | Plz | Ort | Counts
--------------------------------------
khk | jhkhjk | 5454 | khk | 5465464
khjk | jdasas | 5254 | kda | 32123
www | dasdad | 5655 | dsa | 2334
usw.
So soll es aussehen:
Name | Strasse | Plz | Ort | Counts
--------------------------------------
khk | jhkhjk | 5454 | khk | 5465464
INfotext zu dem 1. Datensatz
khjk | jdasas | 5254 | kda | 32123
INfotext zu dem 2. Datensatz
www | dasdad | 5655 | dsa | 2334
INfotext zu dem 2. Datensatz
usw.
Beim Erstellen der Seite (PHP) fülle ich für jeden Datensatz zwei Zeilen.
1. für den Datensatz selber
2. für den versteckten Info text
Ich habe es zwar mit
Und der Funktion
geschafft alle versteckten Zeilen ein und auszublenden. Nur bleibt hier verständlicherweise, zwischen jedem sichtbaren Datensatz eine kleine Lücke, weil nur die Ebenen in der Tabellenzeilen versteckt werden und nicht die Zeile selber. Unschön
Ich habe schon versucht es direkt mit <tr style='display:none'> zu machen, nur habe ich mir da schon die Finger gebrochen, wegen Firefox, IE Kompatibilität. Der eine kann mit name nicht richtig usw. Ich bekomme einfach keine JS-funktion hin, die mir alle versteckten Zeilen einer bestimmten Tabelle, gleichzeitig ein bzw. ausblendet. Der oben geschriebene Workarround, einfach alle Ebenen innerhalb einer bestimmten Ebene zu verstecken, ist nicht gerade toll.
Hoffentlich kennt einer das Problem und kann mir auf die Sprünge helfen.
Wäre für mich wie Weihnachten, wenn es endlich mal klappt (in IE und FireFox)!
Jörg
Ich möchte jede zweite Tabellenzeile gleichzeitig aus bzw. einblenden.
Ich habe eine Tabelle, in der Datensätze einer DB angezeigt werden.
Also für jeden
PHP-Code:
<tr>
Für diese Datensätze gibt es aber auch zusätzlich einen Infotext, der etwas mächtiger ausfällt und damit auch nicht direkt angezeigt werden soll. Nur bei Bedarf soll eine weitere Zeile unter jedem Datensatz erscheinen zb. bei <a onClick=ShowInfo()>Zeige Info</a>, jetzt kommt dat Problem:
So sieht es bis jetzt aus:
Name | Strasse | Plz | Ort | Counts
--------------------------------------
khk | jhkhjk | 5454 | khk | 5465464
khjk | jdasas | 5254 | kda | 32123
www | dasdad | 5655 | dsa | 2334
usw.
So soll es aussehen:
Name | Strasse | Plz | Ort | Counts
--------------------------------------
khk | jhkhjk | 5454 | khk | 5465464
INfotext zu dem 1. Datensatz
khjk | jdasas | 5254 | kda | 32123
INfotext zu dem 2. Datensatz
www | dasdad | 5655 | dsa | 2334
INfotext zu dem 2. Datensatz
usw.
Beim Erstellen der Seite (PHP) fülle ich für jeden Datensatz zwei Zeilen.
1. für den Datensatz selber
2. für den versteckten Info text
Ich habe es zwar mit
PHP-Code:
<div id='bemerkung'>
<table>
<tr>
<td>Der Datensatz</td>
</tr>
<tr>
<td>
<div align='left' style='display:none'>infotext</div>
</td>
</tr>
</table>
</div>
PHP-Code:
function ShowInfo()
{
var ebenen = document.getElementById('bemerkung').getElementsByTagName('div');
for (i = 0; i < ebenen.length; i++)
if (ebenen [i].style.display=="none")
ebenen [i].style.display = 'inline';
else
ebenen [i].style.display = 'none';
}
Ich habe schon versucht es direkt mit <tr style='display:none'> zu machen, nur habe ich mir da schon die Finger gebrochen, wegen Firefox, IE Kompatibilität. Der eine kann mit name nicht richtig usw. Ich bekomme einfach keine JS-funktion hin, die mir alle versteckten Zeilen einer bestimmten Tabelle, gleichzeitig ein bzw. ausblendet. Der oben geschriebene Workarround, einfach alle Ebenen innerhalb einer bestimmten Ebene zu verstecken, ist nicht gerade toll.
Hoffentlich kennt einer das Problem und kann mir auf die Sprünge helfen.
Wäre für mich wie Weihnachten, wenn es endlich mal klappt (in IE und FireFox)!
Jörg
Kommentar