Solución:
Tienes que volver a implementarlo usando <xsl:choose>
etiqueta:
<xsl:choose>
<xsl:when test="$CreatedDate > $IDAppendedDate">
<h2> mooooooooooooo </h2>
</xsl:when>
<xsl:otherwise>
<h2> dooooooooooooo </h2>
</xsl:otherwise>
</xsl:choose>
La sentencia If se utiliza para comprobar rápidamente una sola condición. Cuando tenga varias opciones, utilice <xsl:choose>
como se ilustra a continuación:
<xsl:choose>
<xsl:when test="$CreatedDate > $IDAppendedDate">
<h2>mooooooooooooo</h2>
</xsl:when>
<xsl:otherwise>
<h2>dooooooooooooo</h2>
</xsl:otherwise>
</xsl:choose>
Además, puede utilizar varios <xsl:when>
etiquetas para expresar If .. Else If
o Switch
patrones como se ilustra a continuación:
<xsl:choose>
<xsl:when test="$CreatedDate > $IDAppendedDate">
<h2>mooooooooooooo</h2>
</xsl:when>
<xsl:when test="$CreatedDate = $IDAppendedDate">
<h2>booooooooooooo</h2>
</xsl:when>
<xsl:otherwise>
<h2>dooooooooooooo</h2>
</xsl:otherwise>
</xsl:choose>
El ejemplo anterior sería equivalente al pseudocódigo siguiente:
if ($CreatedDate > $IDAppendedDate)
{
output: <h2>mooooooooooooo</h2>
}
else if ($CreatedDate = $IDAppendedDate)
{
output: <h2>booooooooooooo</h2>
}
else
{
output: <h2>dooooooooooooo</h2>
}
Si puedo ofrecer algunas sugerencias (dos años después, pero espero que sean de utilidad para los futuros lectores):
- Factoriza lo común
h2
elemento. - Factoriza lo común
ooooooooooooo
texto. - Tenga en cuenta el nuevo XPath 2.0
if/then/else
construir si usa XSLT 2.0.
Solución XSLT 1.0 (también funciona con XSLT 2.0)
<h2>
<xsl:choose>
<xsl:when test="$CreatedDate > $IDAppendedDate">m</xsl:when>
<xsl:otherwise>d</xsl:otherwise>
</xsl:choose>
ooooooooooooo
</h2>
Solución XSLT 2.0
<h2>
<xsl:value-of select="if ($CreatedDate > $IDAppendedDate) then 'm' else 'd'"/>
ooooooooooooo
</h2>
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)