RE: [xsl] Elminitate redundancy by using variables

Subject: RE: [xsl] Elminitate redundancy by using variables
From: "Michael Kay" <mhk@xxxxxxxxx>
Date: Wed, 24 Mar 2004 09:37:54 -0000
<tr>
  <xsl:attribute name="style">
    <xsl:text>background-color: </xsl:text>
    <xsl:choose>
      <xsl:when test="number($count) mod 2 = 0">
         <xsl:text>#FFFFFF;</xsl:text>
      </xsl:when>
      <xsl:otherwise>
         <xsl:text>#E7EEFF;</xsl:text>
      </xsl:otherwise>
    </xsl:choose>
  </xsl:attribute>
  <td class="fieldInfo">
     <xsl:value-of select="substring(LineItemName,1,45)"/>
  </td>
</tr>

Or in XSLT 2.0:

<tr style="background-color: {if (number($count) mod 2 = 0)
                              then '#FFFFFF;'
                              else '#E7EEFF;'}/>
  <td class="fieldInfo">
     <xsl:value-of select="substring(LineItemName,1,45)"/>
  </td>
</tr>

No variables needed in either case.

Michael Kay


# -----Original Message-----
# From: Kenny Akridge [mailto:kenny@xxxxxxxxxxxxxxxxx] 
# Sent: 24 March 2004 02:59
# To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
# Subject: [xsl] Elminitate redundancy by using variables
# 
# Imagine I have xsl similar to this:
# 
# <xsl:choose>
# 	<xsl:when test="number($count) mod 2 = 0">
# 		<tr style="background-color: #FFFFFF;">
# 		   <td class="fieldInfo">
# 			<xsl:value-of
# select="substring(LineItemName,1,45)"/>
# 		   </td>
# 		</tr>
# 	</xsl:when>
# 	<xsl:otherwise>
# 		<tr style="background-color: #E7EEFF;">
# 		   <td class="fieldInfo">
# 			<xsl:value-of
# select="substring(LineItemName,1,45)"/>
# 		   </td>
# 		</tr>
# 	</xsl:otherwise>
# </xsl:choose>
# 
# You can easily see that this would be a nightmare if I had 
# even just 5 <td> elements being repeated.  Is there a way to 
# save the value from the beginning of the <td> to the end, 
# including the generate value of LineItemName?
# 
# Thanks.
# 
# 
# 

Current Thread