Latest web development tutorials

XSLT <xsl: choose> elemento

<Xsl: choose> viene utilizzato in combinazione <xsl: when> e <xsl: altrimenti> esprimere più test condizionali.


<Xsl: choose> elemento

grammatica

<xsl:choose>
<xsl:when test="expression">
... some output ...
</xsl:when>
<xsl:otherwise>
... some output ....
</xsl:otherwise>
</xsl:choose>


Luogo in cui i criteri di selezione

Per inserire il file XML per molteplici condizioni di prova, aggiungere al file XSL <xsl: choose>, <xsl: when> e <xsl: altrimenti> elemento:

Esempi

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">
<html>
<body>
<h2>My CD Collection</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th>Title</th>
<th>Artist</th>
</tr>
<xsl:for-each select="catalog/cd">
<tr>
<td><xsl:value-of select="title"/></td>
<xsl:choose>
<xsl:when test="price &gt; 10">

<td bgcolor="#ff00ff">
<xsl:value-of select="artist"/></td>
</xsl:when>
<xsl:otherwise>

<td><xsl:value-of select="artist"/></td>
</xsl:otherwise>
</xsl:choose>

</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>

</xsl:stylesheet>

Prova »

Il codice di cui sopra sarà superiore al prezzo del CD 10 colonne aggiungere un colore di sfondo rosa al "Artista".


Un altro esempio

Questo è un altro contiene due <xsl: when> elemento esempio:

Esempi

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">
<html>
<body>
<h2>My CD Collection</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th>Title</th>
<th>Artist</th>
</tr>
<xsl:for-each select="catalog/cd">
<tr>
<td><xsl:value-of select="title"/></td>
<xsl:choose>
<xsl:when test="price &gt; 10">

<td bgcolor="#ff00ff">
<xsl:value-of select="artist"/></td>
</xsl:when>
<xsl:when test="price &gt; 9">

<td bgcolor="#cccccc">
<xsl:value-of select="artist"/></td>
</xsl:when>
<xsl:otherwise>

<td><xsl:value-of select="artist"/></td>
</xsl:otherwise>
</xsl:choose>

</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>

</xsl:stylesheet>

Prova »

Il codice di cui sopra è superiore al 10 per colonna "Artist" per aggiungere un colore di sfondo rosa nel prezzo del CD, e più di 9 e inferiore al prezzo del CD è pari a 10 a colonna "Artist" per aggiungere un colore di sfondo grigio.