这是变量:
<xsl:variable name="WepNr" select="/*/DbResponse/ResultSet/Row[Cell[@name='ARTNR']=$ArtNr][Cell[@name='WEANR']=$WeaNr]/Cell[@name='WEPNR']"/>
它可以返回多个值,因此在这种情况下,它将输出如下内容:
2 21 36
=3 个值。我尝试通过它们:
<xsl:for-each select="$WepNr">
<LineNumber><xsl:value-of select="$WepNr"/></LineNumber>
</xsl:for-each>
但它只是输出相同的值
2 21 36
三次:<LineNumber>2 21 36</LineNumber>
<LineNumber>2 21 36</LineNumber>
<LineNumber>2 21 36</LineNumber>
我怎样才能输出 3 次,例如:
<LineNumber>2</LineNumber>
<LineNumber>21</LineNumber>
<LineNumber>36</LineNumber>
?
最佳答案
您在 for-each 中再次选择整个变量。
你可能想要这样的东西(未经测试):
<xsl:for-each select="$WepNr">
<LineNumber><xsl:value-of select="."/></LineNumber>
</xsl:for-each>
关于xml - XSLT 遍历数组值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12779996/