나는이 다음 XSLT 조각이 있습니다XSLT를 사용하여 ID를 올바르게 설정하는 방법은 무엇입니까?
<table border="1" id ="test">
<xsl:for-each select= "TestSuite/TestCase">
<tr>
<xsl:attribute name="id">
<xsl:value-of select="count(preceding-sibling::*)"/>
</xsl:attribute>
<b><xsl:value-of select="@name"/></b>
</tr>
<xsl:for-each select="Verification|Command">
<tr>
<xsl:attribute name="id">
<xsl:value-of select="count(preceding-sibling::*)"/>
</xsl:attribute>
<xsl:choose>
<xsl:when test="contains(name() , 'Verification')">
<td>Verification <xsl:value-of select="@type"/></td>
<td><xsl:value-of select="@status"/></td>
</xsl:when>
<xsl:when test="contains(name() , 'Command')">
<td>Command <xsl:value-of select="@type"/></td>
<td><xsl:value-of select="@status"/></td>
</xsl:when>
</xsl:choose>
</tr>
</xsl:for-each>
</xsl:for-each>
</table>
가 지금은 단순히 한 후이 모든 내부 루프는 0으로 ID 계산을 시작하는 등 문제가 있음을, 각 테이블은 0으로 시작하는 ID를 행주고 싶습니다를 다시. 이 문제를 어떻게 해결할 수 있습니까? 내 HTML 페이지에는 하나의 테이블 만 표시되므로 모든 tr이 형제가되어야합니다.
연속 정수를 사용해야합니까? 그렇지 않다면 바깥 쪽 루프의 id를 내부 루프의 id와 연결할 수 있습니다 ('0-0', '0-1', '0-2', '1-0', '1-1'등) – MiMo
예, id를 사용하여 요소로 스크롤해야하기 때문입니다. XML이 어떻게 생겼는지 미리 알 수 없기 때문에 연속적이면 좋을 것입니다. –