如何使用字符串为jQueryUI Datepicker设置minDate / maxDate?

时间:2010-05-04 22:11:25

标签: string jquery-ui datepicker mindate maxdate

jQueryUI Datepicker documentation声明可以使用“当前dateFormat中的字符串”设置minDate选项。所以我尝试了以下内容来初始化datepickers:

$("input.date").datepicker({ minDate: "01/01/2010", maxDate: "12/31/2010" });

但是,这导致我的日期选择器的可选日期范围从2015年6月11日到2015年12月17日。

我已经检查了当前的dateformat及其mm/dd/yy,它应该表示月份的2位数字,当天的2位数字和年份的4位数字,用斜线分隔。我也尝试在原始化声明中加入dateFormat: "mm/dd/yy"

之后我还检查了minDate和maxDate的值,并将它们设置为我想要的值:01/01/201012/31/2010

我希望能够使用字符串设置min / maxDate,因为我将这些值作为字符串传递给其他地方。也许有人知道为什么会发生这种情况以及如何解决这个问题,或者解决这个问题,perphaps会改变日期字符串的格式或什么?

由于

编辑: 使用: jQuery v1.3.2 jQuery UI v1.7.2

3 个答案:

答案 0 :(得分:4)

最后我不得不使用这样的东西,因为v1.7的datepicker没有带日期的probs:

$.getJSON("/GetMinMaxDates/", function(dates) {
    var DateLimits = {min:null, max:null};

    DateLimits.min = new Date(Date.parse(dates.min));
    DateLimits.max = new Date(Date.parse(dates.max));

    $("input.date").datepicker({ dateFormat: "mm/dd/yy", minDate: DateLimits.min, maxDate: DateLimits.max });
});

答案 1 :(得分:1)

1.3.2中的1.3.2似乎是一个“错误”。在1.4.2和1.8.1中一切都很好。

答案 2 :(得分:0)

无论如何,我发现你的最后一种方法最适合IE7 / 8。 IE在字符串馈送日期函数中返回NaN;一旦我解析数字,问题就消失了。