XSL变量赋值

时间:2011-11-22 17:19:52

标签: xslt

我有另一个简单的xsl变量问题。我正在尝试评估表达式并切换“AM”或“PM”后缀。变量永远不会评估任何东西。我甚至改变了我的考试,没有运气。

<xsl:variable name="DisplayAMPM">
  <xsl:choose>
    <xsl:when test="number(substring($LastBootUpTime, 9,2))>11">
      <xsl:value-of select="PM"/>
    </xsl:when>
    <xsl:otherwise>
      <xsl:value-of select="AM"/>
    </xsl:otherwise>
  </xsl:choose>
</xsl:variable>
<xsl:copy-of select="DisplayAMPM"/>

2 个答案:

答案 0 :(得分:3)

如果您使用value-of,请将“AM”和“PM”放在引号中,以便处理器将其视为字符串。

此外,如果您引用该变量,就像您在copy-of中尝试的那样,请不要忘记$

<xsl:variable name="DisplayAMPM">
  <xsl:choose>
    <xsl:when test="number(substring($LastBootUpTime, 9,2))>11">
      <xsl:value-of select="'PM'"/>
    </xsl:when>
    <xsl:otherwise>
      <xsl:value-of select="'AM'"/>
    </xsl:otherwise>
  </xsl:choose>
</xsl:variable>
<xsl:copy-of select="$DisplayAMPM"/>

答案 1 :(得分:0)

>属性中有一个失控的test字符,当然应为&gt;。 其次,您不复制变量($DisplayAMPM),而是复制(不存在?)DisplayAMPM元素子节点集。