Subject: RE: [xsl] position in a conditional for-each From: Heather Lindsay <heather.lindsay@xxxxxxxxxxxxx> Date: Wed, 3 Jan 2001 15:46:57 -0500 |
hi, Try this instead. The template for "COOLJEX_ATTRIBUTE[@key = 'true']" will only go through the elements that you want and the position() function can be used to determine when the last element is reached. <xsl:stylesheet ...> <xsl:template match="whateverYouHaveHere"> Your other stuff here <xsl:apply-template match="COOLJEX_ATTRIBUTE[@key = 'true']"/> your other stuff here </xsl:template> <xsl:template match="COOLJEX_ATTRIBUTE[@key = 'true']"> <xsl:value-of select="@name"/> <xsl:if test="position() != last()"> <xsl:text>,</xsl:text> </xsl:if> </xsl:template> </xsl:stylesheet> However, I believe you can also do this: <xsl:for-each select="COOLJEX_ATTRIBUTE[@key = 'true'"> <xsl:value-of select="@name"/> <xsl:if test="position() != last()"> <xsl:text>,</xsl:text> </xsl:if> </xsl:for-each> Good luck, Heather -----Original Message----- From: James Piva [mailto:james.piva@xxxxxxxxxxxxxxx] Sent: Wednesday, January 03, 2001 3:26 PM The problem is that I can't know when the last element to meet the condition has passed.I would like to omit trailing comma. <xsl:for-each select="COOLJEX_ATTRIBUTE"> <xsl:if test="@key='true'"> <xsl:value-of select="@name"/> <xsl:text> , </xsl:text> </xsl:if> </xsl:for-each> XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] position in a conditional, David Carlisle | Thread | [xsl] Variable as Position Indicato, Mark Miller |
Re: [xsl] Specifying element associ, Mike Brown | Date | [xsl] Variable as Position Indicato, Mark Miller |
Month |