2012-04-18 107 views
0

我有一个XML文件,它看起来像这样:XML,XSL,如何从XML文件读取子节点XSL文件

<TestRun> 
<FailedTests> 
    <FailedTest id="19"> 
    <Name>Test</Name> 
    <FailureType>Assertion</FailureType> 
    <Location> 
    <File>Sets.cpp</File> 
    </Location> 
    <Details> 
    <Detail id="1">Exception caught returning cmd response </Detail> 
    <Detail id="2">unresolvable error code</Detail> 
    </Details> 
    </FailedTest> 
</FailedTests> 
</TestRun> 

,我想TestRun/FailedTests的子节点的值/ FailedTest/Details,我该如何做? 我试过,但它不工作:

 <TD> 
      <xsl:for-each select="Details/Detail"> 
       <br></br><br></br> 
      <xsl:value-of select="(Detail)"/> 
      </xsl:for-each> 
     </TD> 
    </TR> 

回答

1

当你在里面的详细资料/详细的for-each您可以通过打印当前元素的内容:

<xsl:value-of select="."/> 
+0

我试过了,但它没有给出结果,飞机空白 – Manoj 2012-04-18 13:30:42

+0

在我的代码中有什么错? 还是有另一种方法来提取子节点的值而不用提供它们的名字? – Manoj 2012-04-18 13:37:59

+0

你的XSLT片段不是一个有效的XML加我不知道你的最外面的for-each是在正确的上下文中调用的。也许发布一整件事情? – 2012-04-18 13:41:03