|
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Return position in for-each
Hello,
A disadvantage to an xsl:for-each is that the position() increases by one
for each step. so, if an xsl:if test validates the current step and says
"Yes apply templates for this step", "don't apply templates for this step",
and you are interested in a positiion which reflects the total number of
"YES" steps... well you have a problem. Take into consideration this
for-each rule:
<xsl:for-each select="Entry">
<xsl:variable name="element_name"><xsl:value-of
select="concat('competitor_name_',position())"/></xsl:variable>
<xsl:if test="string($BROWSER_VARS//ELEMENT[@name=$element_name]/.)">
<tr>
<!-- [[[ HERE WE ADD A COLUMN THAT HAS AN INCREMENTING NUMBER ]]] -->
<td><xsl:value-of select="concat(position(),'.')"/></td>
<!-- [[[ HERE WE GET THE REST OF THE COLUMN DATA ]]] -->
<xsl:apply-templates select="Element" mode="PRINTER_FRIENDLY">
<xsl:with-param name="position"><xsl:value-of
select="position()"/></xsl:with-param>
</xsl:apply-templates>
</tr>
</xsl:if>
</xsl:for-each>
Is there a work-around, or another way to accomplish an incrementing number
for the TD?
Karl
|
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
|

Cart








