L’élément < xsl : choose > de XSLT

L’élément < xsl : choose > de XSLT


XML cours tutorial

L’élément < xsl : choose > est utilisé en conjonction avec <xsl:when> et < xsl : otherwise > d'exprimer plusieurs tests conditionnels.

L’élément < xsl : choose >

L'élément < xsl : choose > permet de définir une liste de choix et d'affecter à chaque choix une transformation différente. Chaque choix est défini par un élément et un traitement par défaut peut être spécifié grâce à l'élément .

Syntaxe :

<xsl:choose>
         <xsl:when test="condition1">action1</xsl:when>
         <xsl:when test="condition2">action2</xsl:when>
         <xsl:otherwise>autre action</xsl:otherwise>
     </xsl:choose>

Pour insérer un test conditionnel multiples pour le fichier XML, ajoutez dans le fichier XSL les éléments :
< xsl : choose > qui veut dire choisir  
 <xsl:when> qui veut dire lorsque
et < xsl : otherwise> qui veut dire

Exemple :

Sélectionner le code

  <?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>Ma Collection de cd</h2>
    <table border="1">
      <tr bgcolor="#9acd32">
        <th>Titre</th>
        <th>Artiste</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="#ffff00">
            <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>

 

 Le code ci-dessus ajoutera une couleur jaune d'arrière-plan de la colonne « Artiste » lorsque le prix du CD est supérieur à 10.

Un autre exemple

Voici un autre exemple qui contient deux éléments  <xsl:when> :

Sélectionner le code

  <?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>Ma Collection de cd</h2>
    <table border="1">
      <tr bgcolor="#9acd32">
        <th>Titre</th>
        <th>Artiste</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="#ffff00">
            <xsl:value-of select="artist"/></td>
          </xsl:when>
          <xsl:when test="price &gt; 9">
            <td bgcolor="#ff9900">
            <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>

 


Cours precedent:
cours precedent  Elément XSLT XSL if
    Sommaire de :
Le langage XML
 Cours suivant:
Elément XSLT xsl apply templates   cours suivant
Par carabde 10 mai 2014

  • Trafic Booster
    hebergement web


    HTML5, CSS3, JavaScript pour débutants Tome 1
    HTML5, CSS3, JavaScript
    pour débutants Tome 1

    Premier tome d'une série vidéo dédiée à l'apprentissage des langages HTML, CSS et JavaScript.

    Regarder aussi nos cours :

    Liste toutes les variables définies

     Liste toutes les variables définies

    fonction lcfirst, lcfirst

    Met le premier caractère en minuscule

    fonction strspn, strspn

    Trouve la longueur du premier segment d'une chaîne contenant tous les caractères d'un masque donnée



    Rentabilisez efficacement votre site