2012-07-10 49 views
0

這是我正在努力工作的xsl文件的代碼片段。如何根據每個循環計數動態地設置元素值

我想根據主體中的循環次數在標頭中更改元素request-tot-queries的值。您的幫助將不勝感激!

<HEADER> 
    <request-tot-queries>$Counter</request-tot-queries> 
</HEADER> 
<Body> 
<xsl:for-each select="//Request/Responses/Pooled/ResidenceHistory/Residencies/Residency"> 
<count><xsl:variable name="counter" select="position()"/></count> 
    <xsl:if test="DateRange/To/Date[@Type!='Present']"> 
    <subject-query> 
     . 
     . 
     . 
    </subject-query> 
    </xsl:if> 
</xsl:for-each> 
</Body> 

回答

1

使用count()功能:

<HEADER> 
    <request-tot-queries> 
    <xsl:value-of select="count(//Request/Responses/Pooled/ResidenceHistory/Residencies/Residency)"/> 
    </request-tot-queries> 
</HEADER> 
+0

的Mads,我的OP可能希望只計數爲節點的感覺爲其'XSL:if'條件是'真()' 。 – 2012-07-11 04:18:42

+0

@DimitreNovatchev - 如果是這種情況,OP可能會嘗試更新'xsl:if'中的變量。我認爲Mads的回答是正確的(+1)。 – 2012-07-11 05:14:10

相關問題