最新のWeb開発のチュートリアル
 

XSLT <xsl:choose> Element


<xsl:choose>要素は、と組み合わせて使用され<xsl:when><xsl:otherwise>複数の条件付きテストを発現すること。


<xsl:choose>要素

構文

<xsl:choose>
  <xsl:when test=" WHERE条件を選択して置くために

XMLファイルに対して複数の条件のテストを挿入するには、追加します。<xsl:選択>、<のxsl:とき>、および<xsl:otherwise> XSLファイルの要素:

<?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>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>
»それを自分で試してみてください

上記のコードは、に、ピンクの背景色を追加します"Artist" CDの価格は10よりも高い場合に列。


もう一つの例

ここでは、2つ含まれているもう一つの例です<xsl:when>要素は:

<?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>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>
»それを自分で試してみてください

上記のコードはピンクに背景色を追加する"Artist" CDの価格が9より高く、低い又は10に等しいときCDの価格が10よりも大きい場合、列、および灰色の背景色。