【问题标题】:CSS JS date formatting issueCSS JS日期格式问题
【发布时间】:2017-01-03 22:45:22
【问题描述】:

我有一个不寻常的日期格式问题,也许其他人也遇到过。

我有一个带有 @class = datepicker 文本框的 MVC 应用程序。 我有一个全局格式化字符串 (dd-MMM-yyyy) 有一点JS:

$(function () {
    $('.datepicker').datepicker({
        format: 'dd-MMM-yyyy',
        autoclose: true
    });
}); 

问题:当我单击文本框并选择一个日期时,我得到如下内容:

01-JanuaryJan-2017

我认为,也许,我有一些格式,比如dd-MMMMMMM-YYYY,但我没有。我不知所措。

我继承了这个应用程序并且对 Web 开发不是非常精通,但这似乎是一个我应该能够解决的问题。

我意识到我在这里没有很多细节,但我也只是在寻找通用/高级解决方案,例如: 检查此一般区域,或查找此等。

【问题讨论】:

  • format 不是选项对象的正确属性名称。试试dateFormat - 此处的文档:api.jqueryui.com/datepicker/#option-dateFormat
  • 日期解析器和格式化程序似乎决定不同意的一件事是用于解析和格式化的标记。 :-(

标签: javascript jquery css date format


【解决方案1】:

您的格式错误。使用以下正确的一个(如你所愿):

format: 'dd-MM-yy'

它将像这样显示日期03-January-2017

format: 'dd-M-yy'

它将像这样显示日期03-Jan-2017

【讨论】:

  • 那就是'dd-M-yy'
【解决方案2】:

这是来自jQueryUI DatePicker DocsdateFormat 属性的(不完整)有效值列表:

格式可以是以下几种的组合:

  • d - 日期(无前导零)
  • dd - 日期(两位数)
  • o - 一年中的某一天(无前导零)
  • oo - 一年中的哪一天(三位)
  • D - 日期简称
  • DD - 天名长
  • m - 一年中的月份(无前导零)
  • mm - 一年中的月份(两位数)
  • M - 短月份名称
  • MM - 长月份名称
  • y - 年(两位数)
  • yy - 年份(四位数)
  • @ - Unix 时间戳(自 01/01/1970 以来的毫秒数)
  • ! - Windows 滴答声(自 01/01/0001 起 100ns)
  • '...' - 文字文本
  • '' - 单引号
  • 其他 - 文字文本

因此,在您的情况下,您将MM(全月名)与M(短月名)组合在一起,从而得到JanuaryJan

【讨论】:

  • 非常感谢您的快速回复!由于 jQuery 和 C# 之间的格式选项不同,我似乎感到困惑。我无法让 dateFormat 工作。这对我有用:格式:'dd-M-yyyy';我试过'yy',但我只得到最后两位数。谢谢大家:)。
  • 对属性名称很感兴趣。我将不得不对其进行更多研究。不过,很高兴值列表有所帮助!我会更新我的帖子
  • 我在其他地方读到 dateFormat 需要一个必须在
猜你喜欢
  • 2019-05-08
  • 2011-09-20
  • 2014-04-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多