Subject: Re: [xsl] simulating for with foreach From: "Mohsen Saboorian" <mohsens@xxxxxxxxx> Date: Wed, 5 Jul 2006 15:22:06 +0330 |
Thank you very much. That fully solved my problem, but just for my curiosity, why position() (and also last()) do return sequential numbers instead of real positions. I mean position() returns 1, 2, 3 instead of 1, 4, 9...
Well as I said in my reply, normally you _want_ position() to go in that sequence so you can number the output, check for the last item using position()=last() etc.
So either you keep position() that way and just calculate the old position by inverting the formula, (position()-1)*4+1 in this case or you do as you originally did and select them all and use xsl:if just to process teh opnes you want.
<xsl:for-each select="nodes"> <xsl:if test="position() mod 4 = 1"> ...
then inside the xsl:if position() will be 1,5,...
really I'm not sure what the problem is that you are having, since it seems like the final preferred answer is the code you started with?
David
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] simulating for with forea, David Carlisle | Thread | Re: [xsl] simulating for with forea, David Carlisle |
Re: [xsl] simulating for with forea, David Carlisle | Date | RE: [xsl] simulating for with forea, Michael Kay |
Month |