获取Kendo UI日历的日期列表

时间:2014-04-20 23:27:30

标签: javascript kendo-ui telerik

如何获取Kendo UI Calendar中当前可见的日期列表? 例如,2014年4月的视图包括3月30日到5月10日的日期,我需要一种可靠的方法来获取这些日期的列表,例如,即使将月份更改为6月,也是如此。

更新:对于那些希望得到以下答案灵感的最终解决方案的人来说,这就是它(简化了以便于阅读):

$("#calendar").kendoCalendar({
    navigate: function() {
        window.visibleDates = getVisibleDates(this);
    }
});

var getVisibleDates = function(obj) {
    var firstDay = $("tbody > tr:first > td:first > a", obj.element).data("value");
    var lastDay = $("tbody > tr:last > td:last > a", obj.element).data("value");

    var start = new Date(parseFloat(firstDay.split("/")[0]), parseFloat(firstDay.split("/")[1]), parseFloat(firstDay.split("/")[2]));
    var end = new Date(parseFloat(lastDay.split("/")[0]), parseFloat(lastDay.split("/")[1]), parseFloat(lastDay.split("/")[2]));

    return [start, end];
}

1 个答案:

答案 0 :(得分:2)

请尝试使用以下代码段。

var cal = $("#calendar").data("kendoCalendar");
var first = $("tbody > tr:first > td:first > a", cal._table).data("value");
var last = $("tbody > tr:last > td:last > a", cal._table).data("value");

注意:由于java脚本提供了月份索引,因此您必须在月份中添加+1才能获得确切的日期。