我想增加我的全局變量tmp_balance_virt
在for-each
循環,但在每個循環tmp_balance_virt
(A = 一個 + B)被重置爲初始值,如何使其工作?如何全局變量添加到自身(A = A + B)的XSL
<xsl:variable name="tmp_balance_virt" select="/doc/plot/@st_balance_virt" /> //first value
...
<xsl:if ...>
...
<xsl:for-each
select="/doc/plot/cfc/pl.cashflow.rabean.TransactionsData[type=0]">
<xsl:variable name="tmp_balance_virt" select="value + $tmp_balance_virt" />
[
<xsl:value-of select="date_ms" />
,
<xsl:value-of select="$tmp_balance_virt" />
],
</xsl:for-each>
編輯: 這是對我有用。
<xsl:for-each
select="/doc/plot/cfc/pl.cashflow.rabean.TransactionsData[type=1]">
<xsl:variable name="PREC"
select="count(preceding-sibling::pl.cashflow.rabean.TransactionsData[type=1])+2" />
[
<xsl:value-of select="date_ms" />
,
<xsl:value-of
select="sum(/doc/plot/cfc/pl.cashflow.rabean.TransactionsData[type=1][position() < $PREC]/value) + $tmp_balance_real" />
],
</xsl:for-each>
嘗試增加加上括號A + B:'A =(A + B )' – 2012-07-25 14:43:50
這是XSLT 1還是2?您不能重新定義(並因此增加)1中的變量(不確定約2)。 – Utkanos 2012-07-25 14:44:48