Kendo Scheduler过滤资源显示

时间:2014-05-19 10:55:06

标签: kendo-ui telerik kendo-scheduler

我在ASP.NET MVC中使用开源Kendo Scheduler。我展示了一些会议室,用户可以根据需要预订。现在因为大量的房间,用户可以过滤调度程序中显示的房间。

我目前正在使用这样的功能:

   $(document).ready(function () {
       $("#btnFilter").click(function () {
           $("#scheduler").data().kendoScheduler.resources[0].dataSource.filter({ field: "text", operation: "eq", value: "K15.25" });
           $('#scheduler').data().kendoScheduler.view($('#scheduler').data().kendoScheduler.view().name);

       });
   });

使用此功能,我可以在仅1个房间上过滤调度程序:" K15.25"。但我想在多个房间上过滤调度程序,例如:" K15.25" AND" K16.30" AND" K16.31"并且...我想这是可能的,并且可能不那么难做但我找不到合适的解决方案?

1 个答案:

答案 0 :(得分:0)

在这里,我们根据选择过滤资源,"已检查"变量将是所选资源的集合

              var scheduler = $("#scheduler").data("kendoScheduler");

              var checked = $.map($("#people :checked"), function (checkbox) {
                  return parseInt($(checkbox).val());
              });

              var filter = {
                  logic: "or",
                  filters: $.map(checked, function (value) {
                      return {
                          operator: "eq",
                          field: "ResourceId",
                          value: value
                      };
                  })
              };

              //filter the resource data source
              console.log("filter", filter);
              scheduler.resources[0].dataSource.filter(filter);
              scheduler.view(scheduler.view().name);