|
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: 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> > > > I have it like this now, but want to simplfiy it: > > <xsl:choose> > <xsl:when test="status='undelivered'"> <span > style="color:#ff0000"> <xsl:value-of > select="status"/></span> </xsl:when> > <xsl:when test="status='inprogress'"> <span > style="color:#33cc33"> <xsl:value-of > select="status"/></span> </xsl:when> > <xsl:when test="status='delivered'"> <span > style="color:#33cc33"> <xsl:value-of > select="status"/></span> </xsl:when> > <xsl:when test="status='escalated'"> <span > style="color:#33cc33"> <xsl:value-of > select="status"/></span> </xsl:when> > <xsl:otherwise> <span style="color:#000000"> > <xsl:value-of select="status"/></span></xsl:otherwise> > </xsl:choose> > In 2.0 you can write <xsl:variable name="p" select="index-of(('undelivered', 'inprogress', 'delivered', 'escalated'), status)"/> <span style="color:{('#ff0000', '#33cc33', '#33cc33', '#33cc33')[$p]}"/> One way I sometimes do it in 1.0 is: <xsl:template match="status[.='undelivered']" mode="color">#ff0000</xsl:template> <xsl:template match="status[.='inprogress']" mode="color">#33cc33</xsl:template> <xsl:template match="status[.='delivered']" mode="color">#33cc33</xsl:template> <xsl:template match="status[.='escalated']" mode="color">#33cc33</xsl:template> <span> <xsl:attribute name="style"> <xsl:text>color:</xsl:text> <xsl:apply-templates select="status" mode="color"/> </xsl:attribute> </span> Michael Kay XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|






