Subject: Re: [xsl] Having same number of rows in table irrespective of number of data rows From: Brian Chrisman <incubus@xxxxxxxxxxxxxx> Date: Tue, 12 Apr 2005 00:32:42 -0700 |
On Tue, Apr 12, 2005 at 07:58:14AM +0100, Steve W wrote: > I want to create a table that has a set number of rows in it. The XML has > data in it to be shown in the table - in simple terms one element of the XML > for each row of the table. The XML will only have an element if there is > data, so if I have 3 data elements but I want 5 rows in the table there > will be 2 'missing' rows and I want to output these 2 rows with some set > html in it. > > My template looks like this : > > <table cellpadding="0" cellspacing="0" border="0" width="100%"> > <xsl:for-each select="INITIALVALUES/INITIALVALUE"> > <tr> > <td> > <!-- some html .... --> > </td> > </tr> > </xsl:for-each> > <!-- add 'blank' rows to give constant number of rows in table --> > </table> not the easiest of tasks... You probably want to make a recursive 'xsl:call-template' passing a parameter specifying how many additional rows to create. might try this... ... inside yer <table>... <xsl:call-template name="blank-rows"> <xsl:with-param name="count" select="5 - count(INITIALVALUES/INITIALVALUE)"/> </xsl:call-template> <xsl:template name="blank-rows"> <xsl:param name="count"/> <!-- blank row stuff here --> <xsl:if test="$count > 0"> <xsl:call-template name="blank-rows"> <xsl:with-param name="count" select="$count - 1"/> </xsl:call-template> </xsl:if> </xsl:template> xslt is great at transforming data... not quite so convenient (at least 1.0, not sure about 2.0) when yer not transforming data.. :-) > > Thanks > > Steve
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Having same number of rows in, Steve W | Thread | RE: [xsl] Having same number of row, Michael Kay |
Re: [xsl] XSLT data fetching from m, Glenn Thomas Hvidste | Date | RE: [xsl] How to create a node set , Michael Kay |
Month |