3

我设置了这样的年份范围

$(".date").datepicker({
    changeMonth: true,
    changeYear: true,
    yearRange: '1900:c-18'
});

这显示了从 1900 年到“今天之前 18 年”的年份下降。它设置为今天但在 1900 年的日期选择器。如何将年份下拉设置为最后一个可用年份?

小提琴:http : //jsfiddle.net/fdE2S/

4

2 回答 2

8

如果你仔细查看日期选择器,你会发现它指向的是当前日期

2013 年 3 月 9 日不是 1990 年 3 月 9 日

由于您今年有藏身之处,因此它没有出现。 即,如果您删除 ,yearRange您会找到它。

因此,您需要defaultDate像这样明确设置年份

defaultDate : '-18y' //Subtract 18 years from current date

最后是完整的代码

var date = new Date();
$(".date").datepicker({
    changeMonth: true,
    changeYear: true,
    yearRange: '1900:-18',
    defaultDate : '-18y'    
});

在JSFiddle中检查这个

于 2013-09-03T15:43:20.650 回答
1

尝试这个:

$(".date").datepicker({
    changeMonth: true,
    changeYear: true,
    defaultDate: "-18y",
    minDate: new Date(1900, 1, 1, 0, 0, 0, 0),
    maxDate: "-18y",
    yearRange: '1900:-18'
});

Min 和 maxDate 的使用很好地限制了它,因此用户不能选择超过 18 年前的今天。此外,使用 defaultDate 将按照您的要求将日期设置为 18 年前的今天,格式为“-18y”。

jsFiddle

于 2013-09-03T15:32:21.367 回答