Samuel
Erfahrenes Mitglied
Guten Tag die Herren,
ich habe folgendes Problem, ich würde gerne eine Menüstruktur aus einer XML-File via XSL-File in HTML umwandeln.
XML
XSL
leider wird nur das Mainmenu ausgegeben. Die "sub-Punkte" werden nicht berücksichtigt.
schöne Grüße
Samuel
ich habe folgendes Problem, ich würde gerne eine Menüstruktur aus einer XML-File via XSL-File in HTML umwandeln.
XML
Code:
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="getMenu.xsl"?>
<menu>
<main activ="true">contacts</main>
<sub id="0">lustiger hans</sub>
<sub id="1">freak im kaefig</sub>
<sub id="2">alles mist</sub>
<sub id="3">asterix</sub>
<sub id="4">frank zappa</sub>
<main>todo-list</main>
<main>organiser</main>
</menu>
XSL
Code:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html"/>
<xsl:template match="/">
<xsl:for-each select="menu">
<ul id="navigation">
<xsl:for-each select="main">
<xsl:element name="li">
<xsl:element name="a">
<xsl:attribute name="href">
<xsl:text>javascript:void(null);</xsl:text>
</xsl:attribute>
<xsl:attribute name="onclick">
getMenu('<xsl:value-of select="." />');
</xsl:attribute>
<xsl:value-of select="." />
</xsl:element>
</xsl:element>
<xsl:for-each select="sub">
<xsl:element name="li">
<xsl:element name="a">
<xsl:attribute name="href">
<xsl:text>javascript:void(null);</xsl:text>
</xsl:attribute>
<xsl:value-of select="." />
</xsl:element>
<xsl:attribute name="onclick">
alert('<xsl:value-of select="@id" />');
</xsl:attribute>
<xsl:value-of select="." />
</xsl:element>
</xsl:for-each>
</xsl:for-each>
</ul>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
leider wird nur das Mainmenu ausgegeben. Die "sub-Punkte" werden nicht berücksichtigt.
schöne Grüße
Samuel