Hallöchen,
ich habe mich im Internet mal nach meinem Problem umgeschaut, doch leider nichts passendes gefunden.
Ich würde gerne wissen, ob man mehr als 2 "when"-Anweisungen verarbeiten lassen kann? Also ich denke mal schon, da mir die Verwendung von <xsl:choose> in Kombination mit <xsl:when> sehr nach einer
switch() case: - Anweisung, wie man sie aus Programmiersprachen her kennt, aussieht.
Also nun mal zu meinem Problem. Ich habe in meinem XSLT-Stylesheet 3 "when"-Abfragen hintereinander gepackt. Doch leider werden immer nur die beiden ersten beachtet, obwohl die dritte auch zum zuge kommen sollte.
Also die Parameter-Werte werden auf jeden Fall alle einmal durchlaufen. Das habe ich mir ausgeben lassen und daher bin ich mir sicher. Nur weshalb wird meine letzt <when>-Anweisung niemals ausgeführt?
MfG
wax
ps: Falls es auf diesem Wege wirklich nicht möglich ist, dann verratet mir bitte, wie ich mehrere Tests nacheinander durchführen lassen kann.
ich habe mich im Internet mal nach meinem Problem umgeschaut, doch leider nichts passendes gefunden.
Ich würde gerne wissen, ob man mehr als 2 "when"-Anweisungen verarbeiten lassen kann? Also ich denke mal schon, da mir die Verwendung von <xsl:choose> in Kombination mit <xsl:when> sehr nach einer
switch() case: - Anweisung, wie man sie aus Programmiersprachen her kennt, aussieht.
Also nun mal zu meinem Problem. Ich habe in meinem XSLT-Stylesheet 3 "when"-Abfragen hintereinander gepackt. Doch leider werden immer nur die beiden ersten beachtet, obwohl die dritte auch zum zuge kommen sollte.
Code:
<xsl:param name="mapCounter" /> <xsl:param name="lastMap" /> <xsl:param name="firstMap" /> <xsl:choose> <!-- first map code--> <xsl:when test="$firstMap = 'True' and $lastMap = 'False'"> <title>First</title> </xsl:when> <!-- middle map code--> <xsl:when test="$firstMap = 'False' and $lastMap = 'False'"> <title>Middle</title> </xsl:when> <!-- last map code--> <xsl:when test="$firstMap = 'False' and $lastMap = 'True'"> <title>Last</title> </xsl:when> </xsl:choose>
MfG
wax
ps: Falls es auf diesem Wege wirklich nicht möglich ist, dann verratet mir bitte, wie ich mehrere Tests nacheinander durchführen lassen kann.
Comment