|
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 |