【问题标题】:How to change view date dynamically (which is filter event by date time)如何动态更改查看日期(按日期时间过滤事件)
【发布时间】:2015-09-28 10:10:57
【问题描述】:

我想按日期过滤事件,但日期是通过正常输入类型 =“文本”而不​​是 kendo 默认 datepicker 传递的。并在 kendo schduler 标题中显示传递日期但不能更改查看日期。这是我的代码.... .....

 $scope.searchEventByDate = function (item) {
    var scheduler = $("#scheduler").data("kendoScheduler");
    scheduler.view().startDate(item.StartDate);
    scheduler.view().endDate(item.EndDate);
    scheduler.view(("day"));
    $scope.scheduler.dataSource.read();       
};

这是我的过滤器参数

 parameterMap: function (options, operation) {
                var popupheight = $(window).height() - 180 + 'px';
                $scope.popupWraperForTryout = popupheight;
                var scheduler = $("#scheduler").data("kendoScheduler");
                if (searchCount != 0) {
                    if (operation === "read") {
                        return {
                            filterByPersonalEvent: $scope._filterParamObj.filterBypersonal,
                            filterBySignUpRequired: $scope._filterParamObj.filterBySingupRequired,
                            filterByPaidOrFree: $scope._filterParamObj.filterByPaid,
                            filterByEventStatus: $scope._filterParamObj.eventStatusId,
                            filterByEventType: $scope._filterParamObj.eventTypeId,
                            selectedTeam: $scope._filterParamObj.seasonTeamId,
                            filterByStartDate: scheduler.view().startDate(),
                            filterByEndDate: scheduler.view().endDate(),
                            OrgId: _orgId,
                            UserTimezone: global.userTimezoneOffset
                        }
                    }
                }
            },

我好累。这段代码在查看日期没有变化。请帮帮我

【问题讨论】:

    标签: angularjs kendo-ui kendo-scheduler kendo-datepicker


    【解决方案1】:

    这里有几个问题 - 日视图只显示一天;你不能设置 startDate 和 endDate - 只是日期。

    $scope.searchEventByDate = function (item) {
      var scheduler = $("#scheduler").data("kendoScheduler");
      //scheduler.view().startDate(item.StartDate);
      //scheduler.view().endDate(item.EndDate);
      scheduler.view("day");
      // item.StartDate should be Date object - like scheduler.date(new Date("2013/6/6"));
      scheduler.date(item.StartDate);
      $scope.scheduler.dataSource.read();       
    };
    

    如果您需要设置一些明确的日期范围来过滤 - 您可以这样做,但您仍然不能在日视图中显示超过一天。

    $scope.searchEventByDate = function (item) {
      var scheduler = $("#scheduler").data("kendoScheduler");
      scheduler._myFilterStartDate = item.StartDate;
      scheduler._myFilterEndDate = item.EndDate;
      scheduler.view("day");
      scheduler.date(item.StartDate);
      $scope.scheduler.dataSource.read();       
    };      
    

    在参数映射中:

    ...
    return {
      filterByStartDate: scheduler.view().startDate(),
      filterByEndDate: scheduler.view().endDate(),
      myFilterStartDate: scheduler._myFilterStartDate,
      myFilterEndDate: scheduler._myFilterEndDate,
      OrgId: _orgId,
      UserTimezone: global.userTimezoneOffset
    };
    ...
    

    【讨论】:

      猜你喜欢
      • 2021-10-09
      • 2013-10-20
      • 2018-06-13
      • 2018-01-25
      • 2018-05-27
      • 2022-07-16
      • 1970-01-01
      • 1970-01-01
      • 2021-09-01
      相关资源
      最近更新 更多