2010-05-04 64 views
3

jQueryUI Datepicker documentation指出可以使用“当前dateFormat中的字符串”来设置minDate选项。所以我尝试了以下初始化datepickers:如何使用字符串设置jQueryUI Datepicker的minDate/maxDate?

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

然而,这导致具有去从2015年11月6日至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.2jQuery UI的V1.7.2

+1

我认为mm/dd/yy的意思更像12/31/10(2位数字) – laher 2010-05-04 22:20:44

+1

不可以...'y'表示年份为2位数字,'yy'表示4。 docs.jquery.com/UI/Datepicker/formatDate – leo 2010-05-05 14:53:58

回答

4

最后,我不得不使用这样的事情,因为V1.7日期选择器与日期没有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.3.2一个 “错误” 与1.7.2。在1.4.2和1.8.1中一切正常。

+0

Dratted bugs ...我无法更新到最新版本,就像那样... – leo 2010-05-31 23:02:08

0

我发现你的最后一个方法,为IE7/8是最好的反正。 IE在字符串馈入日期函数中返回NaN;只要我解析数字,问题就消失了。