xslt - Identify position of the items in xsl:for-each -
i have xml below:
<data> <record id="1"/> <record id="2"/> <record id="3"/> <record id="4"/> <record id="5"/> <record id="6"/> </data> i want print xml
**trim("1"-"2"-"3"-"4"-"5"-"6")** i using simple xsl below
<xsl:for-each select="descendant-or-self::*/record"> <xsl:text>trim("</xsl:text> <xsl:value-of select="@id"/> <xsl:text>"-"</xsl:text> <xsl:text>)</xsl:text> </xsl:for-each> the first item requires <xsl:text>trim("</xsl:text> , last item requires <xsl:text>)</xsl:text>. how achieve in order result trim("1"-"2"-"3"-"4"-"5"-"6")
i got answer. is
<xsl:for-each select="descendant-or-self::*/record"> <xsl:if test="position() = 1"> <xsl:text>trim("</xsl:text> </xsl:if> <xsl:value-of select="@id"/> <xsl:text>"-"</xsl:text> <xsl:if test="position() = last()"> <xsl:text>)</xsl:text> </xsl:if> </xsl:for-each>
Comments
Post a Comment