任何人都可以验证以下xslt语法
<xsl:if test="(string(Address/Country)=='US') || (string(Address/Country)=='CA')">
<val name="PHYSICAL_ADDRESS_StateProvinceCd">
<xsl:value-of select="normalize-space(Address/State)" />
</val>
</xsl:if>
当我尝试以上时我得到以下错误 “错误:''语法错误'(字符串(地址/国家)=='美国')或(字符串(地址/国家)=='CA')'。' 致命错误:'无法编译样式表' “
提前致谢 拉玛纳
答案 0 :(得分:0)
==
无效XPath。 equals运算符是单个字符=
。
答案 1 :(得分:0)
<xsl:if test="(string(Address/Country)=='US') || (string(Address/Country)=='CA')">
此处有两个语法错误:
XPath中没有==
运算符。您可能希望使用=
运算符。
XPath中没有||
运算符。您可能希望使用or
运算符。
更正的代码将如:
<xsl:if test="(string(Address/Country) = 'US') or (string(Address/Country) ='CA')">
括号不是必需的,因为or
的优先级低于=
:
<xsl:if test="string(Address/Country) = 'US' or string(Address/Country) ='CA'">