如何测试我的病情是否如此;
<xsl:if test="node = '1' or node='2'"> <input name="list_{@id}" value="{@id}" type="checkBox"/> </xsl:if>
IF声明是否允许OR条件?请指教..
Is IF statement allowed OR condition?
不,但XPath有一个或运算符 – 请注意XPath是区分大小写的语言.
提供的代码中的XPath表达式:
node = '1' or node='2'
在语法上是正确的.
或者是standard XPath operator并且可以用于组合两个子表达式.
[33] OperatorName ::= ‘and’ | ‘or’ | ‘mod’ | ‘div’
这是一个完整的XSLT转换示例:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output omit-xml-declaration="yes" indent="yes"/> <xsl:strip-space elements="*"/> <xsl:template match="node()|@*"> <xsl:copy> <xsl:apply-templates select="node()|@*"/> </xsl:copy> </xsl:template> <xsl:template match="num[ . = 3 or . = 5]"/> </xsl:stylesheet>
将此转换应用于以下XML文档时:
<nums> <num>01</num> <num>02</num> <num>03</num> <num>04</num> <num>05</num> <num>06</num> <num>07</num> <num>08</num> <num>09</num> <num>10</num> </nums>
生成所需的正确结果(除了< num> 03< / num>和< num> 05< / num>以外的所有元素都被复制:
<nums> <num>01</num> <num>02</num> <num>04</num> <num>06</num> <num>07</num> <num>08</num> <num>09</num> <num>10</num> </nums>