【问题标题】:jqueryui datepicker not showing all years in rangejqueryui datepicker 未显示范围内的所有年份
【发布时间】:2012-06-12 18:14:15
【问题描述】:

。 你好,

我正在使用 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 年的整个年份列表

提前致谢

哈维尔

【问题讨论】:

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


    【解决方案1】:

    您还需要使用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"
        });
    

    【讨论】:

    • 很难决定正确的答案,但谢谢你们俩
    • @JavierQQ23 既然你已经选择了,你可以随时投票给另一个。
    【解决方案2】:

    您要添加年份范围选项:

    演示: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" 
        });
    
    });
    ​
    

    【讨论】:

      【解决方案3】:

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

      yearRange: "-70Y:-15Y" 
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-06-09
        • 2021-08-21
        • 1970-01-01
        • 2017-09-15
        • 1970-01-01
        相关资源
        最近更新 更多