jqueryui datepicker未显示范围内的所有年份

时间:2012-06-12 18:14:16

标签: javascript jquery jquery-ui jquery-ui-datepicker

。 您好,

我正在使用jqueryui的datepicker,它运行良好,但有一个问题。 年份列表尚未完成,例如它仅显示10年。如果我想回到10年前,我必须点击第一年,然后再次点击选择一年

这是我的设置:

    $.datepicker.setDefaults( $.datepicker.regional["es"] );
    $("#birth_date").datepicker(
    {
        shortYearCutoff: 1,
        changeMonth: true,
        changeYear: true,
        dateFormat: 'dd-mm-yy',
        minDate: "-70Y", 
        maxDate: "-15Y" 
    });

第一次显示这个范围是1997年到1987年,如果我想要设置1960年那么我必须点击2次并且它有时会烦恼。

我想知道的是,从1942年到1997年,这是一种显示全年名单的方式

提前致谢

Javier

3 个答案:

答案 0 :(得分:8)

您也需要使用yearRange选项。 MaxDate和MinDate仅验证所选日期。年份范围会修改可见年份。

$.datepicker.setDefaults( $.datepicker.regional["es"] );
    $("#birth_date").datepicker(
    {
        shortYearCutoff: 1,
        changeMonth: true,
        changeYear: true,
        dateFormat: 'dd-mm-yy',
        minDate: "-70Y", 
        maxDate: "-15Y",
        yearRange: "1942:1997"
    });

答案 1 :(得分:6)

您想要添加年份范围选项:

演示:http://jsfiddle.net/lucuma/NAuEx/2/

$(document).ready(function() {
    $.datepicker.setDefaults( $.datepicker.regional["es"] );
    $("#birth_date").datepicker(
    {
        shortYearCutoff: 1,
        changeMonth: true,
        changeYear: true,
        dateFormat: 'dd-mm-yy',
        minDate: "-70Y", 
        maxDate: "-15Y",
         yearRange: "1900:2010" 
    });

});
​

答案 2 :(得分:1)

设置更动态的范围在您的情况下将如下所示

yearRange: "-70Y:-15Y"