我有一個稱爲ID的屬性,每當該值被分配給它時,它就會加1。我有一種情況,每次輸入循環時都會增加值。外部循環有2條記錄,內部循環有3條記錄。如何保留一個變量值並在XSLT中更新它
外環1 - 內環1,2,和3中,ID屬性被遞增爲1,2和3,但
外環2 - 內環....再次ID屬性開頭1.我需要這是4,5等......
此增量ID沒有與輸入XML文件相關的數據。所有的處理都必須在XSLT中完成。
XSLT文件:
<xsl:variable name="localISYMPid" select="0"/>
<xsl:element name="Test1">
<xsl:for-each select="Solutions/Solution">
<xsl:if test="Observations/Observation!= '' ">
<xsl:for-each select="Observations/Observation">
<xsl:element name="Roles">
<!-- Generating the ID value -->
<xsl:variable name="ids" select="generate-id(.)"/>
<!-- ***************************-->
<xsl:attribute name="CK"><xsl:value-of select="substring-after($ids,'Solution')"/></xsl:attribute>
<xsl:attribute name="ID"><xsl:value-of select="position() + $localISYMPid "/></xsl:attribute>
</xsl:element>
</xsl:for-each>
</xsl:if>
</xsl:for-each>
</xsl:element>
請幫幫我在打印時內環環繞對於外環1的3倍和外環2和當內環爲1 ID 4的值, ID值應爲4個。截至目前,它的再次印刷1 ..
ID 1
ID 2
ID 3
----------
ID 1(it should print 4)
我使用XSLT 1.0
謝謝 拉姆
+1這個特定任務的XSLT intruction得到你想要的結果。 – 2011-04-14 16:30:25