不知道如何描述这个问题,但是这里有。如果您转到Kendo Scheduler Demo页面: -
http://demos.kendoui.com/web/scheduler/index.html
顶部的复选框会过滤数据,但如果清除复选框,则调度程序会显示所有数据;我需要它来显示没有数据。有什么想法吗?
答案 0 :(得分:0)
该演示中的示例通过向复选框上的Scheduler dataSource对象添加和删除过滤器来更改事件。要过滤掉所有数据,可以为过滤器对象提供不可能的条件。
这不是最佳解决方案,但我找不到另一种隐藏数据的方法。
这样做可以更新复选框'change eventhandler,如下所示:
....
$("#people :checkbox").change(function (e)
{
var checked = $.map($("#people :checked"), function (checkbox)
{
return parseInt($(checkbox).val());
});
var filter;
if (checked.length == 0)
{
filter = {
logic:"and",
filters: [
{
operator: "eq",
field: "ownerId",
value: 1
}, {
operator: "neq",
field: "ownerId",
value: 1
}]
};
}
else {
var filter = {
logic: "or",
filters: $.map(checked, function(value) {
return {
operator: "eq",
field: "ownerId",
value: value
};
})
};
}
var scheduler = $("#scheduler").data("kendoScheduler");
scheduler.dataSource.filter(filter);
});
....