Hallo Forum,
ich möchte per xsl:for-each Nodes enumerieren -- allerdings nicht Nodes aus dem ursprünglichen XML-Sheet, sondern aus dem XSL.
Ich habe folgendens probiert:
\\
<xsl:variable name="links">
<li><a href="index.xhtml">Index</a></li>
<li><a href="description.xhtml">Description</a></li>
</xsl:variable>
<ul>
<xsl:for-each select="$links/li">
<li>
<xsl:if test="document/meta/section = .">
<xsl:attribute name="class">active</xsl:attribute>
</xsl:if>
<xsl:apply-templates />
</li>
</xsl:for-each>
</ul>
///
leider klappt das nicht -- habe ich eigentlich auch erwartet.
Ich suche nun ein Workaround.
Hintergrund: ich habe mehrere Dateien, die mit einem XSL zu XHTML transformiert werden. Im XSL wird auch ein Menü definiert, mit einem Eintrag für jede Datei, und nun soll immer das korrespondierende Menüelement farbig markiert werden (class="active"). Dafür der if-Test. Ohne das for-each müßte ich für jeden Eintrag des Menüs einzeln prüfen, ob er aktiv sein soll.
Gruß,
KonRad -
"Was Gott zusammengeführt hat ..." :: polithink.org -
the politicultural e-zine :: http://www.polithink.org