如何检查XSL中的整数值?我正在使用1.0版
这是我尝试过的,但它不起作用:
<xsl:variable name="ShowEmailEventId"
select="com.zoniac.emailevent.NewEmailEventBean/emailEventIdString"/>
<xsl:if test="$ShowEmailEventId !=48">
<table align="center"
width="96%"
border="1"
style="border-color:#2E73AD;border-collapse:collapse"
cellspacing="0"
cellpadding="10">
<tr>
<td width="10%"
style="border-color:#2E73AD;color: black; font: 11px verdana;padding:2px"
align="left"
valign="top">
<b>S.No</b>
</td>
</tr>
</table>
</xsl:if>
答案 0 :(得分:4)
这可能是最短的表达式,返回true()
iff $ x可以用作整数:
只需使用:
floor($x) = $x
完整测试:
<xsl:if test="floor($x) = $x">
<!-- $x is an integer -->
</xsl:if>
或
<xsl:when test="floor($x) = $x">
<!-- $x is an integer -->
</xsl:when>
或
someXPathExpression[floor($x) = $x]
答案 1 :(得分:3)
检查值nameofint
是否为int ...(您显然想要更改if条件的内部。
<xsl:template match="CheckInt">
<xsl:if test="not(string(.) castable as xs:integer)">
<xsl:text>NOT AN INT: </xsl:text>
<xsl:value-of select="."/>
</xsl:if>
</xsl:template>