• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Tabellenproblem

Tronjer

Senior HTML'ler
table1.png

Ich habe hier eine Anzahl von Datensätzen, die ich, wie im obigen Bild dargestellt, gerne in Tabellenform ausgeben würde. Problem ist nun, dass unter bestimmten Voraussetzungen eine Zusatzinformation unterhalb eines Datensatzes eingeblendet werden soll. Im Beispiel: Wenn der Bestand bei Null liegt, zeige an, dass der Artikel z.Zt. nicht am Lager ist.

Dazu fallen mir auf Anhieb nur zwei Ansätze ein. Ich könnte mit JavaScript das entsprechende <td> Feld parsen und mittels createElement() und append() dynamisch die <tr> mit der Meldung anhängen. Oder ich verzichte auf die Tabelle und baue statt dessen ein Div-Konstrukt. Beides wären allerdings keine brauchbaren Lösungen, weil auf die Tabelle hinterher ein tablesorter plugin gelegt werden soll, mit denen der User die Spalten auf- und abwärts sortieren kann.

Wonach ich eigentlich suche, ist der Ansatz, eine <tr> in zwei Zeilen zu umbrechen, um je nach Bedarf das letzte <td> Feld mit einem display:none auszublenden. Es muss aber auf jeden Fall valides HTML sein. Gibt es dahingehend irgendeine Möglichkeit, oder fällt jemandem noch etwas anderes ein?
 
Jeden Datensatz in einen <tbody> mit zwei <TR>s packen, die zweite Zeile jeweils per default mit css unsichtbar machen und nur bei Bedarf einblenden? Damit können anschließend die <tbody>s sortiert werden ... oder?
 
Naja, die Datensätze werden aus einem PHP-Array eingelesen, und ich habe das jetzt erst mal mit einem if-else-Konstrukt gemacht, welches die zweite <tr> lediglich dann generiert, wenn der entsprechende Key keinen Leerstring zurückliefest. Damit erspare ich mir zumindest die clientseitige Manipulation mit JavaScript und leere Tablerows. Nur das Problem mit dem Tablesorter ist noch nicht gelöst. Mal schauen, was die Firma sagt. Vor Mittwoch ist eh kein Verantwortlicher da.

Ich hatte nur die Hoffnung, dass es vielleicht noch einen ganz einfachen Ansatz gibt, den ich schlichtweg übersehen habe. Mit Tabellen habe ich es ja nicht so. ;)
 
Zurück
Oben