RE: [xsl] xsl:if statement with numeric

Subject: RE: [xsl] xsl:if statement with numeric
From: "Michael Kay" <mhk@xxxxxxxxx>
Date: Sun, 28 Mar 2004 17:47:50 +0100
Your first mistake is that

 <td bgcolor="$farbe" align="right">

should be

 <td bgcolor="{$farbe}" align="right">

This will then tell you your second mistake, which is that the variable
$farbe has gone out of scope (its scope is the <xsl:if> in which it is
declared). You need to declare it as:

<xsl:variable name="farbe">
  <xsl:choose>
  <xsl:when test=". &lt; 100.00">#00ff00</xsl:when>
  <xsl:otherwise>[eine andere farbe]</xsl:otherwise>
  </xsl:choose>
</xsl:variable>

Michael Kay 

# -----Original Message-----
# From: Tuan Luu [mailto:tuanluu@xxxxxx] 
# Sent: 28 March 2004 07:13
# To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
# Subject: [xsl] xsl:if statement with numeric
# 
# hello
# I'm very new to this. 
# I have an xml returned that looks like this: 
# 
# <td>100</td>
# <td>98.00</td>
# <td>100</td>
# 
# now I'd like to give the td tags different colors, depending 
# on the value.
# What I did so far ist that: 
# 
# <xsl:template match="monat">
#         <xsl:if test= "numeric(.) &lt; 100.00">     
#             <xsl:variable name="farbe">#00ff00</xsl:variable>
#         </xsl:if>
#     <td bgcolor="$farbe" align="right">
#         <xsl:apply-templates/>
#     </td>
# </xsl:template>
# 
# My problem is, I think he doesn't make a difference with the 
# value, all columns get the same color. 
# What have I done wrong here?
# Thanks for any answers.
# 
# -- 
# +++ NEU bei GMX und erstmalig in Deutschland: T\V-gepr|fter 
# Virenschutz 
# +++ +++
# 100% Virenerkennung nach Wildlist. Infos: 
# http://www.gmx.net/virenschutz
# 
# 
# 
# 

Current Thread