【问题标题】:jQuery: DatePicker not allowing me to select max datejQuery:DatePicker 不允许我选择最大日期
【发布时间】:2013-12-21 23:53:46
【问题描述】:

我正在使用 jQuery 的日期选择器并指定今天的最短日期和 1 月 31 日的最长日期。然而,当日历显示时,无法选择 31 日,尽管代码看起来正确。

代码如下:

function initializePickers() {
  jQuery('.date-start').each(function() {
      startEndPickers(this);
  });
  jQuery('.date-end').each(function() {
      startEndPickers(this);
  });
}

function startEndPickers(input) {
  jQuery(input).datepicker({
      dateFormat: "M dd, yy",
      minDate: new Date(),
      maxDate: new Date('2014-01-31')
  });
}

这里有一个 jsFiddle,它展示了无法选择 1 月 31 日:http://jsfiddle.net/Hec5m/

有人知道这是什么原因吗? maxDate 明确指定为第 31 个,而不是第 30 个。

【问题讨论】:

标签: jquery datepicker maxdate


【解决方案1】:

new Date('2014-01-31') 选择 1 月 31 日午夜,这意味着一天中的任何时间都无法选择,这就是它被排除在外的原因。

您可以通过使用 2014-02-01 作为最大日期 (jsFiddle) 或在 23:59:59 (jsFiddle) 指定时间和结束日期来解决此问题。

jQuery UI 还允许您输入一个字符串作为参数(与您的日期格式相同——在您的情况下为"Jan 31, 2014"),而不是传入一个Date 对象,其行为与您的行为相同预计。 (jsFiddle)

【讨论】:

    猜你喜欢
    • 2017-04-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多