Subject: [xsl] Elements just before/after the current one From: Nicolas Pillot <nicolas.pillot@xxxxxxxxxx> Date: Thu, 27 May 2004 14:40:28 -0400 |
Hello! I have a problem, as you can guess. I am struggling to find the element that is just before, and the element just after the current one. What i am doing now for the element after the current one is : following-sibling::*[position() = 1] And this seems to work. But for the element just before, i tried following-sibling::*[last()] but this gives me the first (topmost) item instead of the last ! So i debugged with : <xsl:variable name="prevcount"> <xsl:value-of select="count(preceding-sibling::*)" /> </xsl:variable> <xsl:for-each select="preceding-sibling::*"> <xsl:element name="before"> <xsl:value-of select="."/> <!-- or name() --> <xsl:value-of select="position()"/> <xsl:if test="position() = $prevcount"> selected </xsl:if> </xsl:element> </xsl:for-each> And the "selected" text appears right next to the good element. Then i tried the following to sum it up : <xsl:variable name="prevcount"> <xsl:value-of select="count(preceding-sibling::*)" /> </xsl:variable> <xsl:value-of select="preceding-sibling::*[position() = $prevcount]" /> But again, it give me the content of the first (topmost) node !! What am i doing wrong ?! Is there a simpler way to get these "special" items ? Any help would be greatly appreciated ! Nicolas
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] needing help, Michael Kay | Thread | Re: [xsl] Elements just before/afte, Nicolas Pillot |
[xsl] needing help, Alejandro Raiczyk | Date | RE: [xsl] Elements just before/afte, Josh Canfield |
Month |