• <legend id='r797D'><style id='r797D'><dir id='r797D'><q id='r797D'></q></dir></style></legend>
    <i id='r797D'><tr id='r797D'><dt id='r797D'><q id='r797D'><span id='r797D'><b id='r797D'><form id='r797D'><ins id='r797D'></ins><ul id='r797D'></ul><sub id='r797D'></sub></form><legend id='r797D'></legend><bdo id='r797D'><pre id='r797D'><center id='r797D'></center></pre></bdo></b><th id='r797D'></th></span></q></dt></tr></i><div id='r797D'><tfoot id='r797D'></tfoot><dl id='r797D'><fieldset id='r797D'></fieldset></dl></div>

        <small id='r797D'></small><noframes id='r797D'>

          <bdo id='r797D'></bdo><ul id='r797D'></ul>
      1. <tfoot id='r797D'></tfoot>

        XSLT 格式日期为 MM DD YYYY

        时间:2023-09-05

          <small id='jPAkC'></small><noframes id='jPAkC'>

            <tbody id='jPAkC'></tbody>

        1. <i id='jPAkC'><tr id='jPAkC'><dt id='jPAkC'><q id='jPAkC'><span id='jPAkC'><b id='jPAkC'><form id='jPAkC'><ins id='jPAkC'></ins><ul id='jPAkC'></ul><sub id='jPAkC'></sub></form><legend id='jPAkC'></legend><bdo id='jPAkC'><pre id='jPAkC'><center id='jPAkC'></center></pre></bdo></b><th id='jPAkC'></th></span></q></dt></tr></i><div id='jPAkC'><tfoot id='jPAkC'></tfoot><dl id='jPAkC'><fieldset id='jPAkC'></fieldset></dl></div>
          <tfoot id='jPAkC'></tfoot>

            • <bdo id='jPAkC'></bdo><ul id='jPAkC'></ul>
                  <legend id='jPAkC'><style id='jPAkC'><dir id='jPAkC'><q id='jPAkC'></q></dir></style></legend>
                • 本文介绍了XSLT 格式日期为 MM DD YYYY的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

                  问题描述

                  我正在尝试使用 XSLT/X-Path 格式化 XML 日期.

                  I am trying to format an XML date using XSLT/X-Path.

                  我有:PostDate="2014-03-27"我想呈现为:2014 年 3 月 27 日.

                  我已经读到 XSLT 可能不是要走的路.JavaScript 是更好的方法吗?有人可以提供一些帮助吗?

                  I have read that XSLT may not be the way to go. Is JavaScript a better way? Can someone please offer some assistance?

                  谢谢!

                  罗宾

                  推荐答案

                  这里有一些 XSLT 和 XPath 解决方案.如果您要在客户端(浏览器)处理此问题,则必须坚持使用 XSLT 1.0 解决方案(或使用 JavaScript).如果您在其他地方(独立或服务器端)生成结果,则可以使用与 XSLT2/XPath3 兼容的处理器.

                  Here are some XSLT and XPath solutions. If you are going to process this at the client-side (browser) you will have to stick to the XSLT 1.0 solution (or use JavaScript). If you generate your result somewhere else (standalone or server-side), you might be able to use a XSLT2/XPath3 compatible processor.

                  XPath 3.0 解决方案

                  format-date(//*/@PostDate, '[MNn] [D01], [Y0001]')
                  

                  XSLT 解决方案

                  源 XML:

                  <Message PostDate="2014-03-27">Some text</Message>
                  

                  XSLT 2.0 样式表:

                  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
                      <xsl:output method="html"/>
                      <xsl:template match="Message">
                          <date>
                              <xsl:value-of select="format-date(@PostDate, '[MNn] [D01], [Y0001]')"></xsl:value-of>
                          </date>
                      </xsl:template>
                  </xsl:stylesheet>
                  

                  XSLT 1.0 样式表

                  <?xml version="1.0" encoding="UTF-8"?>
                  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
                      <xsl:output method="html"/>
                      <xsl:template name="month-name">
                          <xsl:param name="month"/>
                          <xsl:if test="$month = 1">January</xsl:if>
                          <xsl:if test="$month = 2">February</xsl:if>
                          <xsl:if test="$month = 3">March</xsl:if>
                          <xsl:if test="$month = 4">April</xsl:if>
                          <xsl:if test="$month = 5">May</xsl:if>
                          <xsl:if test="$month = 6">June</xsl:if>
                          <xsl:if test="$month = 7">July</xsl:if>
                          <xsl:if test="$month = 8">August</xsl:if>
                          <xsl:if test="$month = 9">September</xsl:if>
                          <xsl:if test="$month = 10">October</xsl:if>
                          <xsl:if test="$month = 11">November</xsl:if>
                          <xsl:if test="$month = 12">December</xsl:if>    
                      </xsl:template>
                  
                      <xsl:template name="format-iso-date">
                          <xsl:param name="iso-date"/>
                          <xsl:variable name="year" select="substring($iso-date, 1, 4)"/>
                          <xsl:variable name="month" select="substring($iso-date, 6, 2)"/>
                          <xsl:variable name="day" select="substring($iso-date, 9, 2)"/>
                          <xsl:variable name="month-name">
                              <xsl:call-template name="month-name">
                                  <xsl:with-param name="month" select="$month"/>
                              </xsl:call-template>
                          </xsl:variable>
                          <xsl:value-of select="concat($month-name, ' ',$day, ', ', $year)"/>
                      </xsl:template>
                  
                      <xsl:template match="Message">
                          <date>
                              <xsl:call-template name="format-iso-date">
                                  <xsl:with-param name="iso-date" select="@PostDate"/>
                              </xsl:call-template>
                          </date>
                      </xsl:template>
                  </xsl:stylesheet>
                  

                  XSLT 输出:

                  <date>March 27, 2014</date>
                  

                  您还可以在 EXSLT 扩展中使用 date 函数:http://www.exslt.org/

                  You can also use the date functions in the EXSLT extension: http://www.exslt.org/

                  这篇关于XSLT 格式日期为 MM DD YYYY的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!

                  上一篇:JavaScript 日期时间解析 下一篇:在 javascript 或 momentjs 中获取给定的日期格式(指定

                  相关文章

                  最新文章

                  <tfoot id='x7FYS'></tfoot>

                    <bdo id='x7FYS'></bdo><ul id='x7FYS'></ul>

                  <small id='x7FYS'></small><noframes id='x7FYS'>

                • <legend id='x7FYS'><style id='x7FYS'><dir id='x7FYS'><q id='x7FYS'></q></dir></style></legend>
                    1. <i id='x7FYS'><tr id='x7FYS'><dt id='x7FYS'><q id='x7FYS'><span id='x7FYS'><b id='x7FYS'><form id='x7FYS'><ins id='x7FYS'></ins><ul id='x7FYS'></ul><sub id='x7FYS'></sub></form><legend id='x7FYS'></legend><bdo id='x7FYS'><pre id='x7FYS'><center id='x7FYS'></center></pre></bdo></b><th id='x7FYS'></th></span></q></dt></tr></i><div id='x7FYS'><tfoot id='x7FYS'></tfoot><dl id='x7FYS'><fieldset id='x7FYS'></fieldset></dl></div>