用ASP.NET定义的Kendo网格,列将列设置为多滤波器
.Filterable(ftb => ftb.Multi(True))
我已经定义了这样的filtermenuinit事件:
.Events(ev => ev.FilterMenuInit("filterMenuInit"))
使用典型的JS示例对kendo网格上的滤波器下拉中的条目进行排序,
function filterMenuInit(e) {
var filterMultiCheck = this.thead.find("[data-field=" + e.field + "]").data("kendoFilterMultiCheck")
filterMultiCheck.container.empty();
filterMultiCheck.checkSource.sort({ field: e.field, dir: "asc" });
filterMultiCheck.checkSource.data(filterMultiCheck.checkSource.view().toJSON());
filterMultiCheck.createCheckBoxes();
}
我遇到了以下问题-filterMultiCheck.checkSource.view()
总是空的,导致.toJSON()
呼叫失败。
在JS中完全定义的网格(可悲的是,此特定网格不是一个选项(,在同一环境(Kendo窗口上的Kendo Tab(中没有此问题。
有人有帮助的线索吗?
这可能对您来说可能是或不是一个选择,但是将ServerOperation
设置为DataSource
中的CC_3为我解决了。
.Events(e => e.FilterMenuInit("filterMenuInit"))
.DataSource(d => d
.Ajax()
.ServerOperation(false)
.Read(...)
)