Inne działy

 

Element XSLT <xsl:choose>

 

Element <xsl:choose> jest używany w połączeniu z elementami <xsl:when> i <xsl:otherwise> do wyrażenia wielu testów warunkowych.


 

Element <xsl:choose>

 

Składnia

 

<xsl:choose>
  <xsl:when test=" wyrażenie ">
    ... dane wyjściowe...
  </xsl:when>
  <xsl:otherwise>
    ... dane wyjściowe...
  </xsl:otherwise>
</xsl:choose>

Gdzie umieścić warunek Choose

Aby wstawić wiele testów warunkowych w pliku XML, należy dodać elementy <xsl:choose>,  <xsl:when> i <xsl:otherwise> do pliku XSL:

Przykład

 

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

<xsl:template match="/">
  <html>
  <body>
  <h2> Moja kolekcja CD </h2>
  <table border="1">
    <tr bgcolor="#9acd32">
      <th>Tytuł</th>
      <th>Artysta</th>
    </tr>
    <xsl:for-each select="katalog/cd">
    <tr>
      <td><xsl:value-of select="tytuł"/></td>
      <xsl:choose>
        <xsl:when test="cena &gt; 10">
          <td bgcolor="#ff00ff">
          <xsl:value-of select="artysta"/></td>
        </xsl:when>
        <xsl:otherwise>
          <td><xsl:value-of select="artysta"/></td>
        </xsl:otherwise>
      </xsl:choose>
    </tr>
    </xsl:for-each>
  </table>
  </body>
  </html>
</xsl:template>

</xsl:stylesheet>

Powyższy kod doda różowy kolor tła w kolumnie "Artysta", gdy cena CD jest wyższa niż 10.


 

Inny przykład

Oto kolejny przykład, który zawiera dwa elementy <xsl:when>:

Przykład

 

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

<xsl:template match="/">
  <html>
  <body>
  <h2> Moja kolekcja CD </h2>
  <table border="1">
    <tr bgcolor="#9acd32">
      <th>Tytuł</th>
      <th>Artysta</th>
    </tr>
    <xsl:for-each select="katalog/cd">
    <tr>
      <td><xsl:value-of select="tytuł"/></td>
      <xsl:choose>
        <xsl:when test="cena &gt; 10">
          <td bgcolor="#ff00ff">
          <xsl:value-of select="artysta"/></td>
        </xsl:when>
        <xsl:when test="cena &gt; 9">
          <td bgcolor="#cccccc">
          <xsl:value-of select="artysta"/></td>
        </xsl:when>
        <xsl:otherwise>
          <td><xsl:value-of select="artysta"/></td>
        </xsl:otherwise>
      </xsl:choose>
    </tr>
    </xsl:for-each>
  </table>
  </body>
  </html>
</xsl:template>

</xsl:stylesheet>

Powyższy kod będzie dodawać różowy kolor tła w kolumnie "Artysta" gdy cena CD jest wyższa niż 10 i szary kolor tła, gdy cena CD jest większa niż 9 i mniejsza lub równa 10.

 

Zobacz nasze wszystkie kursy

WWW


HTML
HTML - Znaczniki
CSS - Tutorial
CSS - Selektory
PHP
JavaScript

XML

XSLT

Bazy danych


SQL
SQLite
MySQL
PostgreSQL

 

 

Programowanie


C
C++
C#
Java
VisualBasic
Python

Linux


Podstawy Linuxa
Bash
Linuks artykuły

Windows


Excel funkcje
Windows wskazówki
Outlook

Pozotałe działy


Programy
Rozrywka

 

 

 

This email address is being protected from spambots. You need JavaScript enabled to view it.