Subject: variable incrementing problems From: Eugeny Kuzakov <kev@xxxxxxxxx> Date: Mon, 28 Jun 1999 17:56:53 +0700 (OSS) |
hi* I am need correctly calculate rowspan attribute in result html-document. I am have problems with it. Question: In debug2 comment value of FolderRowspan variable correctly incrementes into need value. But after exit from <xsl:if> tag it keep previous value. What can I do? Thanks. -- Best wishes, Eugeny Kuzakov Laboratory 321 ( Omsk, Russia ) kev@xxxxxxxxx ICQ#: 5885106
<?xml version="1.0"?> <document> <folder name="name1"> <highligth>Some!</highligth> <highligth>Some2!</highligth> <desc>comment...</desc> </folder> <folder name="name2"> <desc>comment...</desc> <subfolder name="name1"> <desc>Something in subfolder name1</desc> <highligth>Some2!</highligth> </subfolder> <subfolder name="name2"> <desc>Something in subfolder name2</desc> </subfolder> <highligth>Some!</highligth> </folder> <folder name="name3"> <desc>comment...</desc> <subfolder name="name1"> <desc>Something in subfolder name1</desc> </subfolder> <subfolder name="name2"> <desc>Something in subfolder name2</desc> </subfolder> <subfolder name="name3"> <desc>Something in subfolder name3</desc> <highligth>Some2!</highligth> </subfolder> <highligth>Anything!</highligth> </folder> <folder name="name4"> <desc>comment...</desc> </folder> </document>
<?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/XSL/Transform/1.0" xmlns="http://www.w3.org/TR/REC-html40" default-space="strip" indent-result="yes" result-ns=""> <xsl:template match="document"> <html> <head> <title>Title</title> </head> <body bgcolor="white"> <xsl:apply-templates select="folder"/> </body> </html> </xsl:template> <xsl:template match="folder"> <xsl:variable name="FolderRowspan"><xsl:value-of select="count(subfolder)*2+1"/></xsl:variable> <xsl:comment>debug1: Before if:<xsl:value-of select="$FolderRowspan"/></xsl:comment> <xsl:if test="count(highligth)+count(subfolder/highligth) > 0"> <xsl:variable name="FolderRowspan"><xsl:value-of select="$FolderRowspan+1"/></xsl:variable> <xsl:comment>Debug2: in if after increase:<xsl:value-of select="$FolderRowspan"/></xsl:comment> </xsl:if> <xsl:comment>Debug3: after if:<xsl:value-of select="$FolderRowspan"/></xsl:comment> <table border="1"> <xsl:if test="$FolderRowspan > 1"> <tr> <td> <xsl:attribute name="rowspan"> <xsl:value-of select="$FolderRowspan"/> </xsl:attribute> <xsl:comment>I will glad to insert here nbsp entity</xsl:comment> <font color="white">_</font> </td> <td> <b>Folder</b>:<xsl:value-of select="desc"/> </td> </tr> </xsl:if> <xsl:if test="number($FolderRowspan) = 1"> <tr> <td> <xsl:comment>I will glad to insert here nbsp entity</xsl:comment> <font color="white">_</font> </td> <td> <b>Folder</b>:<xsl:value-of select="desc"/> </td> </tr> </xsl:if> <xsl:for-each select="./subfolder"> <tr> <td> <b>Subfolder</b>: <xsl:value-of select="@name"/> </td> </tr> <tr> <td> <xsl:value-of select="desc"/> </td> </tr> </xsl:for-each> <xsl:if test="count(highligth) > 1"> <tr> <td> <b><xsl:for-each select="highligth"> <xsl:value-of select="."/>; </xsl:for-each> <xsl:for-each select="subfolder/highligth"> <xsl:value-of select="."/>; </xsl:for-each></b> </td> </tr> </xsl:if> </table> <br /> </xsl:template> </xsl:stylesheet>
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Sorting of Direct XML in IE5, Shinichiro HAMADA | Thread | RE: variable incrementing problems, Kay Michael |
RE: attribute value templates & jav, Kay Michael | Date | RE: variable incrementing problems, Kay Michael |
Month |