【问题标题】:Odd custom date format fails to set correct selected date奇怪的自定义日期格式无法设置正确的选定日期
【发布时间】:2010-11-08 14:50:10
【问题描述】:

当使用 jQuery UI (1.8.6) 日期选择器插件并尝试使用一种特定的奇数自定义日期格式时,日历无法设置所选日期。失败的格式是 ymmdd(2010 年除夕将是 101231)。所选日期在输入中正确设置,但日历无法指示所选日期。

当设置其他格式时,例如 y-mmdd、yyyy-mm-dd 等 - 一切都按预期工作,并且在打开日历时默认选择的日期。设置 ymmdd 格式时,日历默认以今天日期打开。

我正在使用以下方式配置日期选择器:

$(function() { $(".dateField").datepicker( { dateFormat: 'ymmdd' } ) } );

这是插件中的错误还是我做错了什么?

【问题讨论】:

    标签: jquery jquery-ui datepicker


    【解决方案1】:

    调查了 parseDate 的源代码,其中包含一个错误,导致日期选择器错误地处理日期格式“y”。从未使用前瞻结果来确定要解析的年份位数。

    我将 getNumber 闭包的代码更改为:

    var isDoubled = lookAhead(match);
    var size = (match == '@' ? 14 : (match == '!' ? 20 :
        (match == 'y' && isDoubled ? 4 : (match == 'o' ? 3 : 2))));
    

    更改后,“ymd”格式也可以使用。将提交错误并提出拉取请求以提交更改。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-04-02
      • 1970-01-01
      • 1970-01-01
      • 2014-08-17
      • 2017-06-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多