0

我已将 Datepickers 添加到旧版 Web 应用程序的多个字段中。一个这样的文本框是到期日期字段。当用户不希望某些东西过期时,他们会将日期设置为 12/31/9999。出于这个原因,我希望 Datepicker 中的 yearRange 类似于“2012 到 2022 和 9999”。

设置从现在到 9999 的范围很容易,但这会创建一个带有数千个选项的年份下拉列表。我宁愿未来 10 年只有 10 个选项,然后是 9999 的第 11 个选项。

我尝试使用 this yearRange,但 Datepicker 似乎不理解逗号。有任何想法吗?

yearRange: "-0:+10,9999"
4

1 回答 1

0

使用这篇文章的帮助,我只是将我的范围保留为“-0:+10”,然后我添加了一个“从不”按钮,如下所示:

beforeShow: function( input ) {
    setTimeout(function() {
        var buttonPane = $(input)
            .datepicker("widget")
            .find(".ui-datepicker-buttonpane");

        var btn = $('<BUTTON class="ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all">Never</BUTTON>');
        btn
            .unbind("click")
            .bind("click", function () {
                $(input)
                    .datepicker("setDate", new Date(9999,11,31))
                    .datepicker("hide");
            });

        btn.appendTo(buttonPane);

    }, 1 );
}

注意 - 这是我必须用来让 12/31/9999 正确显示的日期。

于 2012-07-27T23:21:45.970 回答