比较XSLT <xsl:if>中的string时,如何指定“不等于”?
目前我有一个xsl与下面的代码,我试图打印出“计数”只有当它不等于N/A
但似乎像"!="
不工作。
<xsl:for-each select="Directory/Match"> <xsl:if test = "Count != N/A"> <tr> <td><xsl:value-of select="@bookName" /></td> <td><xsl:value-of select="@AuthorName" /></td> <td><xsl:value-of select="Count" /></td> </tr> </xsl:if> </xsl:for-each>
但是,如果我尝试将其与数值进行比较,它将起作用。
例:
<xsl:if test = "Occurrances != 0">
有人可以告诉我:如果我想比较string,我可以使用什么?
菲尔布特说: 但也要注意,通常写得更好
test="not(Count = 'N/A')"
如果只有一个“计数”元素,那么它们的意思是相同的,但是如果没有“计数”或者有几个,那么含义就不同了。
如果你想比较一个string文字,你需要把它放在(单)引号:
<xsl:if test="Count != 'N/A'">