如何 "Filter a Kendo Grid data on serverSide with multi checkbox filter that has some default selections made"

How to "Filter a Kendo Grid data on serverSide with multi checkbox filter that has some default selections made"

我正在尝试在服务器端过滤设置为 true 的 kendo 网格的列上创建一个多复选框过滤器。在多选复选框过滤器中,我想将选择默认为某个值。我正在尝试实现下面给出的这两种情况:

1) 我仍然希望 multiSelect 过滤器向我显示该字段的所有值,并且只检查默认选择。

2) 此外,将网格列上的数据过滤到多复选框过滤器中选中的复选框。

我已经尝试了以下方法,而且我几乎接近于实现 1) 或 2)。但我正在努力让他们一起工作。

Here's a link to the demo for 1)

通过以上,我可以只选中默认复选框,但加载的网格数据不显示过滤数据,它显示所有内容。

对于 2) 我尝试了以下

Filter: [{
           field: "ProductName", operator: "eq", value: "Chai"
}],

上面的代码正确地过滤了网格上的数据,但是对于菜单过滤器,复选框列表也被缩小到只包含服务器发送的过滤项目列表。 (寻找一种解决方案来缩小网格中的数据,但在复选框过滤器中显示所有选项)。

有没有办法让我在带有服务器端过滤的多复选框过滤器上同时满足这两个要求?

非常感谢任何解决此问题的想法。

提前致谢!

启用Grid 的serverPaging 后,应为所有Filterable Multi Check 小部件提供dataSource。这意味着,您将必须在您的服务器上实施方法,该方法将 return 项目列表显示在过滤器中。

columns: [
{
    field: "FirstName",
    filterable: {
        multi: true,
        //when serverPaging of the Grid is enabled, dataSource should be provided for all the Filterable Multi Check widgets
        dataSource: {
            transport: {
                read: {
                    url: telerikWebServiceBase + "Employees/Unique",
                    dataType: "jsonp",
                    data: {
                        field: "FirstName"
                    }
                }
            }
        }
    },
},

这是一个有效的 demo

这是 Telerik 的演示 link