XSL检查多个节点是否存在for-each

时间:2014-05-22 11:11:59

标签: xslt foreach xslt-2.0

如果我在xsl文档中有多个节点并想要检查它们是否都有一个存在的子节点,那么如何在XSL 2中使用for-each循环呢?

<A>
 <B>
  <C>test</C>
</B>
 <B>
  <C>test</C>
 </B>
</A>

例如,在上面的文档中,我们想要遍历文档中的所有B节点,并确定C是否存在该节点的值为'test'。

1 个答案:

答案 0 :(得分:1)

&#34;我们希望迭代文档中的所有B节点,并确定C是否存在值&#39; test&#39;对于那个B节点&#34;

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>

    <xsl:template match="/">
        <xsl:for-each select="A/B[C='test']">
            <!-- Rest of XSLT -->
        </xsl:for-each>
    </xsl:template>
</xsl:stylesheet>

您可以使用[]添加&#39;测试&#39; /谓词。