From: Johnson, Kaerstin [mailto:johns218(_at_)regis(_dot_)edu]
Sent: Monday, February 02, 2004 12:03 PM
To: XSL-List(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] Problem setting variable in if statement
I am very new to xsl/xslt and have a basic problem. I am
setting a style
sheet color based on a condition.
I'd like the color to be a variable value, like
<xsl:variable name="statColor" select="#33cc33">
and set this variable in the if/choose condtion.
Then recall it like
<span style="color:{$statColor}"><xsl:value-of select="status"></span>
You'll still need to use the xsl:choose construct, but just move it inside
the xsl:variable element:
<xsl:variable name="statColor">
<xsl:choose>
<xsl:when test="status='undelivered'">#ff0000</xsl:when>
<xsl:when test="status='inprogress'">#33cc33</xsl:when>
<xsl:when test="status='delivered'">#0033ff</xsl:when>
<xsl:when test="status='escalated'">#ffff33</xsl:when>
<xsl:otherwise>#000000</xsl:otherwise>
</xsl:choose>
</xsl:variable>
Then reference $statColor as you have it. If you use $statColor only once,
it may not be any more efficient, but it's easier to read.
hth,
b.
| brian martinez
brian(_dot_)martinez(_at_)cendant(_dot_)com |
| lead gui programmer 303.357.3548 |
| cheap tickets, part of trip network fax 303.357.3380 |
| 6560 greenwood plaza blvd., suite 400 englewood, co 80111 |
| cendant travel distribution services http://www.cheaptickets.com/ |
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list