【问题标题】:Open datepicker with certain date打开具有特定日期的日期选择器
【发布时间】:2013-02-05 10:03:00
【问题描述】:

我正在输入一个过去的日期。我要做的就是在当前日期打开该输入的日期选择器。

示例:输入填充为 2011 年 11 月 10 日,onclick 应从 2013 年 2 月 5 日开始打开日期选择器

HTML:

<input type="text" id="datepicker" data-today="5-2-2013" value="10-11-2011" />

Javascript:

var currentDate = $.datepicker.parseDate('dd-mm-yy', $('#datepicker').data('today'));
    $('#datepicker').datepicker({
        defaultDate: currentDate,
        dateformat: 'dd-mm-yy'
    });

使用此代码示例,日期选择器仍会在 2011 年 11 月打开

【问题讨论】:

  • 您使用的是什么版本的 jQuery 和 jQuery UI?另外,您是否看到跨浏览器的问题?当我使用 Chrome 和最新版本的脚本在 jsfiddle 中复制您的代码时,它的行为似乎符合您的要求。
  • 你好!我会尝试找出示例和我的代码的区别
  • 感谢您的评论,我发现 jquery.ui-datepicker-nl.js 导致了冲突。如果我找到当前问题的解决方案,我会发布更新。

标签: jquery date datepicker


【解决方案1】:

你可以试试setDate()

设置日期选择器的日期。新日期可以是 Date 对象或当前日期格式的字符串(例如,“01/26/2009”)、从今天开始的天数(例如,+7)或一串值和句点(“y " 代表年,"m" 代表月,"w" 代表周,"d" 代表天,例如,"+1m +7d"),或 null 以清除所选日期。

$( "#datepicker" ).datepicker( "setDate", currentDate );

【讨论】:

  • 不幸的是 setDate 也会改变输入的值。我想要的只是输入的原始值并在今天的日期打开日期选择器
猜你喜欢
  • 2022-10-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多