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