转换小时似乎需要做很多工作......必须有一个更简单的方法.
<xsl:variable name="hour12">
<xsl:choose>
<xsl:when test="$hour24 < 0">
<xsl:value-of select="12 + $hour24" />
</xsl:when>
<xsl:when test="$hour24 = 0">
<xsl:value-of select="12" />
</xsl:when>
<xsl:when test="$hour24 = 12">
<xsl:value-of select="$hour24" />
</xsl:when>
<xsl:when test="$hour24 > 12">
<xsl:value-of select="$hour24 - 12" />
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$hour24" />
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
Run Code Online (Sandbox Code Playgroud)
有什么建议?
哦...我喜欢布尔值等于0或1.它让生活变得如此简单......
<xsl:variable name="hour12">
<xsl:value-of select="$hour24 - (12 * ($hour24 > 12)) + (12 * ($hour24 = 0))" />`
</xsl:variable>
Run Code Online (Sandbox Code Playgroud)
并为a/p标识符
<xsl:variable name="ap">
<xsl:value-of select="substring('ap', 1 + ($hour24 >= 12), 1)" />
</xsl:variable>
Run Code Online (Sandbox Code Playgroud)