我有一个XML文件,它嵌入到主xml文件中,下面是xml文件格式
<TEST_RESULT>
<MODULE_NAME>CREATE-SETVC-NUM</MODULE_NAME>
<CLASS_NAME>Create</CLASS_NAME>
<NUMBER_OF_PASSED>4</NUMBER_OF_PASSED>
<NUMBER_OF_FAILED>4</NUMBER_OF_FAILED>
<TOTAL_COUNT>8</TOTAL_COUNT>
<CLASS_NAME1>SetVC</CLASS_NAME1>
<NUMBER_OF_PASSED1>4</NUMBER_OF_PASSED1>
<NUMBER_OF_FAILED1>4</NUMBER_OF_FAILED1>
<TOTAL_COUNT1>8</TOTAL_COUNT1>
</TEST_RESULT>
现在我的XSLT文件我需要检查一个条件,当节点<CLASS_NAME>
和<CLASS_NAME1>
两个节点都存在时需要执行一些操作,现在我尝试了以下条件
<xsl:when test="CLASS_NAME and CLASS_NAME1">
<tr>
<td rowspan="2" bgcolor = "#E0FFFF"><font face = "courier"><b><xsl:value-of select="MODULE_NAME"/></b></font></td>
<td bgcolor = "#E0FFFF"><font face = "courier"><b><xsl:value-of select="CLASS_NAME"/></b></font></td>
<td bgcolor = "#E0FFFF"><font face = "courier"><b><xsl:value-of select="NUMBER_OF_PASSED"/></b></font></td>
<td bgcolor = "#E0FFFF"><font face = "courier"><b><xsl:value-of select="NUMBER_OF_FAILED"/></b></font></td>
<td bgcolor = "#E0FFFF"><font face = "courier"><b><xsl:value-of select="TOTAL_COUNT"/></b></font></td>
</tr>
<tr>
<td bgcolor = "#E0FFFF"><font face = "courier"><b><xsl:value-of select="CLASS_NAME1"/></b></font></td>
<td bgcolor = "#E0FFFF"><font face = "courier"><b><xsl:value-of select="NUMBER_OF_PASSED1"/></b></font></td>
<td bgcolor = "#E0FFFF"><font face = "courier"><b><xsl:value-of select="NUMBER_OF_FAILED1"/></b></font></td>
<td bgcolor = "#E0FFFF"><font face = "courier"><b><xsl:value-of select="TOTAL_COUNT1"/></b></font></td>
</tr>
</xsl:when>
但这种情况不知道为什么会失败?
答案 0 :(得分:3)
需要是:
<xsl:choose>
<xsl:when test="CLASS_NAME and CLASS_NAME1">
</xsl:when>
</xsl:choose>
或:
<xsl:if test="CLASS_NAME and CLASS_NAME1">
</xsl:if>
答案 1 :(得分:1)
xsl如果条件匹配模板,
<xsl:if test="expr">
<!-- your code -->
</xsl:if>
元素与表达式一起使用并表达多个条件测试。
`<xsl:choose>
<xsl:when test="expr">
<!-- your code -->
</xsl:when>
<xsl:otherwise>
<!-- your code -->
</xsl:otherwise>
`
,
<强>参考:强>
[w3schools.com/xsl/] [zvon.org/comp/r/ref-XSLT_1.html]
学习xslt zvon是新手的非常好的网站:)