English | Français | Deutsch | >> Magyar << | 中文 | Polski ZVON > Tutorials > XSLT Tutorial
>> Oldal 33 << | Előző | Következő | Tartalom | Elem index

Egy stíluslap t?bb változót is tartalmazhat ugyanazon a néven. Az XSLT stíluslap 1 bemutatja, hogyan lehet egy globálisan meghatározott változó értékét egy ugyanolyan nev? helyi változónak megadni. Az XSLT stíluslap 2 egy helytelen megk?zelítést mutat be. A helyi változó értékének figyelembevétele az xsl:when elem határáig terjed. A sablon t?bbi része csak a globális változó értékét veszi figyelembe.

XSLT stíluslap 1

XML forrás
<source>

<chapter>Chapter A</chapter>
<chapter>Chapter B</chapter>
<chapter>Chapter C</chapter>
<chapter>Chapter D</chapter>

</source>

Kimenet
<TABLE>
  <TR>
     <TD>First chapter : Chapter A</TD>
  </TR>
  <TR>
     <TD>Chapter : Chapter B</TD>
  </TR>
  <TR>
     <TD>Chapter : Chapter C</TD>
  </TR>
  <TR>
     <TD>Last chapter : Chapter D</TD>
  </TR>
</TABLE>

HTML nézet
First chapter : Chapter A
Chapter : Chapter B
Chapter : Chapter C
Last chapter : Chapter D
XSLT stíluslap
<xsl:stylesheet version = '1.0'
     xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>

<xsl:variable name="text">Chapter</xsl:variable>
<xsl:template match="/">
     <TABLE>
          <xsl:for-each select="//chapter">
               <TR>
                    <TD>
                         <xsl:variable name="text">
                              <xsl:choose>
                                   <xsl:when test="position() = 1">First chapter</xsl:when>
                                   <xsl:when test="position()=last()">Last chapter</xsl:when>
                                   <xsl:otherwise>
                                        <xsl:value-of select="$text"/>
                                   </xsl:otherwise>
                              </xsl:choose>
                         </xsl:variable>
                         <xsl:value-of select="$text"/>
                         <xsl:text> : </xsl:text>
                         <xsl:value-of select="."/>
                    </TD>
               </TR>
          </xsl:for-each>
     </TABLE>
</xsl:template>


</xsl:stylesheet>


XSLT stíluslap 2

XML forrás
<source>

<chapter>Chapter A</chapter>
<chapter>Chapter B</chapter>
<chapter>Chapter C</chapter>
<chapter>Chapter D</chapter>

</source>

Kimenet
<TABLE>
  <TR>
     <TD>Chapter : Chapter A</TD>
  </TR>
  <TR>
     <TD>Chapter : Chapter B</TD>
  </TR>
  <TR>
     <TD>Chapter : Chapter C</TD>
  </TR>
  <TR>
     <TD>Chapter : Chapter D</TD>
  </TR>
</TABLE>

HTML nézet
Chapter : Chapter A
Chapter : Chapter B
Chapter : Chapter C
Chapter : Chapter D
XSLT stíluslap
<xsl:stylesheet version = '1.0'
     xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>

<xsl:variable name="text">Chapter</xsl:variable>
<xsl:template match="/">
     <TABLE>
          <xsl:for-each select="//chapter">
               <TR>
                    <TD>
                         <xsl:choose>
                              <xsl:when test="position() = 1">
                                   <xsl:variable name="text">First chapter</xsl:variable>
                              </xsl:when>
                              <xsl:when test="position()=last()">
                                   <xsl:variable name="text">Last chapter</xsl:variable>
                              </xsl:when>
                              <xsl:otherwise>
                                   <xsl:variable name="text">
                                        <xsl:value-of select="$text"/>
                                   </xsl:variable>
                              </xsl:otherwise>
                         </xsl:choose>
                         <xsl:value-of select="$text"/>
                         <xsl:text> : </xsl:text>
                         <xsl:value-of select="."/>
                    </TD>
               </TR>
          </xsl:for-each>
     </TABLE>
</xsl:template>


</xsl:stylesheet>