【问题标题】:Kendo date picker date range heading is not correct when restricting to min max date限制为最小最大日期时,Kendo 日期选择器日期范围标题不正确
【发布时间】:2013-01-04 10:03:35
【问题描述】:

我将 kendoDatePicker max 日期限制为 2030 年,min 日期限制为 1971 年。 但问题是在搜索年份时,日期选择器的年份范围标题显示 2000-2099 而不是 2000-2029,但显示的选择年份在正确的范围内。有没有办法将年份更正为 2000-2029 而不是显示 2000-2099。

我的代码在下面

$("#dater").kendoDatePicker({    
    format  : "MM/dd/yyyy",
    max : new Date(2030,0,0),
    min : new Date(1971,0,1)    
});

【问题讨论】:

    标签: kendo-ui


    【解决方案1】:

    通过您的代码,我得到了您的目标,日期范围从 1971 年到 2029 年。但是让我们再仔细看看。

    展开时的控制顶部:

    • 默认视图 - 月 +/-
    • 单击 - 年 +/-
    • 两次点击 - 10 年 +/-
    • 三击 - 100 年 +/-

    因此,在第三次点击时,您会在标题中看到 2000-2099,但选择项目的正文是正确的,最大为 2029。我认为您的期望是第三次点击是“全范围”而不是100年。如果您的期望得到了实现,那么根据最小/最大的情况,可能不需要第二次或第三次点击;很多额外的逻辑。也许在未来的版本中?

    我希望这会有所帮助。

    编辑

    小心你想要的,你可能会得到它。

    $('#dater').kendoDatePicker({
        format: 'MM/dd/yyyy',
        max: new Date(2030, 0, 0),
        min: new Date(1971, 0, 1),
    });
    $(document).ready(function () {
        $('a.k-nav-prev').click(function() {
            changeFastLabel();
        });
        $('a.k-nav-fast').click(function() {
            changeFastLabel();
        });
        $('a.k-nav-next').click(function() {
            changeFastLabel();
        });
        function changeFastLabel() {
            var header = $('a.k-nav-fast');
            if (header.text() == '2000-2099') {
                header.text('2000-2029');
            } else if (header.text() == '1900-1999') {
                header.text('1971-1999');
            }
        }
    });
    

    【讨论】:

    • 感谢您的回复。是否可以将导航限制在年份深度。我试图设置属性深度:“年”。但它不起作用。你能帮帮我吗?
    • 我回去给了你我认为你首先要寻找的解决方案。你似乎下定决心让它按你的方式工作。享受吧。
    • 我希望当您获得足够的声望点时您会回来并将其标记为正确答案。 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-11
    • 2011-09-30
    相关资源
    最近更新 更多