Subject: Re: [xsl] Display records in 3 columns From: "Peter Lukan" <peter.lukan@xxxxxxxx> Date: Fri, 2 Apr 2004 14:33:06 +0200 |
Thanks for Solution - I've found another one - for my situation is better and faster How: I actually get data from SQL server - so I've added a rownumber column and then corrected XSLT into: <xsl:for-each select="data/rows"> <xsl:if test="1=(rownumber mod 3)"><tr></xsl:if> <td><img src="Objekti/test/<xsl:value-of select="filename"/>" /></td> <xsl:if test="0=(rownumber mod 3)"></tr></xsl:if> </xsl:for-each> And - It works really great and fast anyway thanx for solution. Peter ----- Original Message ----- From: "Michael Kay" <mhk@xxxxxxxxx> To: <xsl-list@xxxxxxxxxxxxxxxxxxxxxx> Sent: Thursday, April 01, 2004 1:08 PM Subject: RE: [xsl] Display records in 3 columns > You can do it this way, but you need to display a different node each time, > so you presumably want something like > > <xsl:value-of select="data/objekt/filename[$count+1]"/> > > However, you really don't need recursion for this. Just > > <xsl:for-each select="data/objekt/filename"> > <xsl:if test="position() mod 3 = 0">..</xsl:if> > > Michael Kay > > > -----Original Message----- > > From: Peter Lukan [mailto:peter.lukan@xxxxxxxx] > > Sent: 01 April 2004 10:04 > > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > > Subject: [xsl] Display records in 3 columns > > > > Hello! > > > > I'm having trouble with displaying data in 3 columns. > > > > I've managed to create a table with 3 columns : > > > > ******* XSL code *********** > > > > <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > > version="1.0"> > > > > <xsl:output method="html"/> > > > > <xsl:template match="/"> > > <table width="400"> > > <xsl:call-template name="coloredRow"> > > <xsl:with-param name="count" select="1"/> > > </xsl:call-template> > > </table> > > </xsl:template> > > > > > > <xsl:template name="coloredRow"> > > <xsl:param name="count"/> > > > > <xsl:if test="$count != count(data/objekt)"> > > > > <xsl:if test="1=($count mod 3)">#<#tr#>#</xsl:if> > > > > <td bgcolor="#ccff66"> > > vsebina: <xsl:value-of select="data/objekt/filename"/> > > </td> > > > > <xsl:if test="0=($count mod 3)">#<#/tr#>#</xsl:if> > > <xsl:call-template name="coloredRow"> > > <xsl:with-param name="count" select="$count + 1"/> > > </xsl:call-template> > > > > </xsl:if> > > </xsl:template> > > > > </xsl:stylesheet> > > > > ************* end of XSL code ************** > > > > but I can't display different records in this code <xsl:value-of > > select="data/objekt/filename"/> > > I think I should use position() function but don't know how! > > > > Thanx Peter Lukan
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Display records in 3 colu, Michael Kay | Thread | [xsl] OT: request help with string-, Jakob |
[xsl] Still problems with the XPath, Jonny Pony | Date | [xsl] XALAN, Miroslav Šimko |
Month |