我正在做的是读取一些xml并使用xsl将其输出到表中以使其更具可读性。
所以一些示例xml:
<example1>
<sample name="aaa">
<help1>Help</help1>
<help2>Me</help2>
</sample>
<sample name="bbb">
<noHelp1>No</noHelp1>
<noHelp2>Help</noHelp2>
</sample>
</example1>
所以我有一个for-each循环来遍历每个样本。所以<xsl:for-each select="example1/sample">
并使用一些值语句将一些值打印到表中。
现在我想做的是用if语句来说
if for-each sample, example1/sample/help1 = valid path, then do something
所以我认为这将是......
...
<xsl:if test = "something">
<xsl:for-each select="example1/sample">
doWork
</xsl:for-each>
</xsl:if>
问题是我不知道如何测试这个,即。我不知道'某事'应该是什么。我也不确定是否应该在for-each语句中使用if语句。
非常感谢任何帮助。
答案 0 :(得分:2)
<xsl:for-each select="example1/sample">
<xsl:if test="help1">
<!-- now we know that this example1/sample has a help1 child -->
</xsl:if>
</xsl:for-each>