0
考慮這個條件,即存在於模板被遞歸調用:條件適用於XSLT 1.0樣式,但不能用於XSLT 2.0樣式表
<xsl:if test="$i <= $count">
我使用XSLT 2.0處理器(撒克遜-B 9.1。 0.6)。該條件似乎只在運行XSLT 1.0樣式表時才起作用。當樣式表版本設置爲2.0(它應該是)時,它停止工作。
任何想法爲什麼?
這裏的整個事情:
<xsl:template name="for.loop">
<xsl:param name="i" />
<xsl:param name="count" />
<xsl:if test="$i <= $count">
...
</xsl:if>
<!-- Repeat the loop by recursion -->
<xsl:if test="$i <= $count">
<xsl:call-template name="for.loop">
<xsl:with-param name="i">
<xsl:value-of select="$i + 1" />
</xsl:with-param>
<xsl:with-param name="count">
<xsl:value-of select="$count" />
</xsl:with-param>
</xsl:call-template>
</xsl:if>
</xsl:template>
感謝。
修復它。我在第二次測試中使用了數字($ count)。奇怪爲什麼只有一個測試需要改變。 –
Jonathan
2009-05-05 16:27:12