XSLT <xsl:if> 元素
<xsl:if> 元素用于放置针对 XML 文件内容的条件测试。
<xsl:if> 元素
如需放置针对 XML 文件内容的条件测试,请向 XSL 文档添加 <xsl:if> 元素。
语法
<xsl:if test="expression">
...如果条件成立则输出...
</xsl:if>
...如果条件成立则输出...
</xsl:if>
在何处放置 <xsl:if> 元素
如需添加有条件的测试,请在 XSL 文件中的 <xsl:for-each> 元素内部添加 <xsl:if> 元素:
实例
<?
xml
version
=
"
1.0
"
encoding
=
"
UTF-8
"
?>
<
xsl:stylesheet
version
=
"
1.0
"
xmlns:xsl
=
"
http://www.w3.org/1999/XSL/Transform
"
>
<
xsl:template
match
=
"
/
"
>
<
html
>
<
body
>
<
h2
>
My CD Collection
</
h2
>
<
table
border
=
"
1
"
>
<
tr
bgcolor
=
"
#9acd32
"
>
<
th
>
Title
</
th
>
<
th
>
Artist
</
th
>
<
th
>
Price
</
th
>
</
tr
>
<
xsl:for-each
select
=
"
catalog/cd
"
>
<
xsl:if
test
=
"
price
>
10
"
>
<
tr
>
<
td
>
<
xsl:value-of
select
=
"
title
"
/>
</
td
>
<
td
>
<
xsl:value-of
select
=
"
artist
"
/>
</
td
>
<
td
>
<
xsl:value-of
select
=
"
price
"
/>
</
td
>
</
tr
>
</
xsl:if
>
</
xsl:for-each
>
</
table
>
</
body
>
</
html
>
</
xsl:template
>
</
xsl:stylesheet
>
尝试一下 »
注意: 必需的 test 属性的值包含了需要求值的表达式。
上面的代码仅仅会输出价格高于 10 的 CD 的 title 和 artist 元素。