Hallo,
ich habe eine XML Datei mit TV-Programmdaten die so aussieht:
Ich habe also Wochentage mit darunterliegenden Zeiten.
Ich möchte nun das ganze in einer Tabelle ausgeben.
Und habe die dazugehörige xsl Datei geschrieben:
Bei der Ausgabe kommt sowas raus:
![](http://img97.imageshack.us/img97/9849/tabellex.jpg)
(Die komischen Zeichen in der Tabelle nicht beachten ist bei der Zeichenkodierung was falsch eingestellt)
Ich will aber das unter jedem Tag auch nur die Zeiten von diesem Tag stehen!
Bei mir verteilt er die Tage richtig als Überschriften in der Tabelle.
Die Zeiten aber werden einfach alle in eine Spalte geschrieben!
Er müsste doch das for-each nur für einen Tag machen und dann von vorne
beginnen damit ich alle 5 Tage in 5 Spalten habe!
Kann mir da einer helfen?
ich habe eine XML Datei mit TV-Programmdaten die so aussieht:
HTML Code:
<?xml version="1.0" encoding="UTF-8"?> <?xml-stylesheet type="text/xsl" href="xsldatei.xsl"?> <TVWeek Year="2009" Month="9" Week="5" Begin_Date="2009-09-28T06:00:00" End_Date="2009-10-05T05:59:59"> <TVDay Day="28.09.2009" DayName="Montag"> <TVTime Time="6:00" RealDate="28.09.2009"> <Note>"Sendungsnahme"</Note> </TVTime> <TVTime Time="6:01" RealDate="28.09.2009"> <Note>"Sendungsnahme"</Note> </TVTime> <TVTime Time="7:00" RealDate="28.09.2009"> <Note>"Sendungsnahme"</Note> </TVTime> <TVTime Time="7:01" RealDate="28.09.2009"> <Note>"Sendungsnahme"</Note> </TVTime> </TVDay> <TVDay Day="29.09.2009" DayName="Dienstag"> <TVTime Time="6:00" RealDate="29.09.2009"> <Note>"Sendungsnahme"</Note> </TVTime> <TVTime Time="6:01" RealDate="29.09.2009"> <Note>"Sendungsnahme"</Note> </TVTime> <TVTime Time="7:00" RealDate="29.09.2009"> <Note>"Sendungsnahme"</Note> </TVTime> <TVTime Time="7:01" RealDate="29.09.2009"> <Note>"Sendungsnahme"</Note> </TVTime> </TVDay> </TVWeek>
Ich möchte nun das ganze in einer Tabelle ausgeben.
Und habe die dazugehörige xsl Datei geschrieben:
HTML Code:
<?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> <html> <body> <h2>Titel</h2> <table border="1"> <tr> <xsl:for-each select="TVWeek/TVDay"> <th> <xsl:value-of select="@Day" /> <br /> <xsl:value-of select="@DayName" /> </th> </xsl:for-each> </tr> <xsl:for-each select="TVWeek/TVDay/TVTime"> <tr> <td> <xsl:value-of select="@Time" /> <xsl:value-of select="Note" /> </td> </tr> </xsl:for-each> </table> </body> </html> </xsl:template> </xsl:stylesheet>
![](http://img97.imageshack.us/img97/9849/tabellex.jpg)
(Die komischen Zeichen in der Tabelle nicht beachten ist bei der Zeichenkodierung was falsch eingestellt)
Ich will aber das unter jedem Tag auch nur die Zeiten von diesem Tag stehen!
Bei mir verteilt er die Tage richtig als Überschriften in der Tabelle.
Die Zeiten aber werden einfach alle in eine Spalte geschrieben!
Er müsste doch das for-each nur für einen Tag machen und dann von vorne
beginnen damit ich alle 5 Tage in 5 Spalten habe!
Kann mir da einer helfen?
Comment