Javascript 使用kendoui进行嵌套过滤
因此,我有两个包含一组数据的网格,网格的每一行都有一个复选框供您选择。基本上,当您在第一个网格上进行选择时,它会过滤第二个网格,以仅显示与网格1上的选择相关的内容。功能齐全。但是,所有这些网格的顶部都有一个搜索栏,供您在网格中搜索包含您键入的术语的项目。这也会根据用户输入过滤网格 我希望通过将过滤器相互嵌套,使它们能够相互协同工作。我希望网格根据选择进行过滤,然后我希望用户能够在搜索栏中键入一些内容,并再次过滤已过滤的网格以查找匹配的项目 我在Telerik论坛上找到一篇帖子,告诉某人尝试类似的东西,但它不起作用:Javascript 使用kendoui进行嵌套过滤,javascript,asp.net-core,kendo-ui,kendo-grid,Javascript,Asp.net Core,Kendo Ui,Kendo Grid,因此,我有两个包含一组数据的网格,网格的每一行都有一个复选框供您选择。基本上,当您在第一个网格上进行选择时,它会过滤第二个网格,以仅显示与网格1上的选择相关的内容。功能齐全。但是,所有这些网格的顶部都有一个搜索栏,供您在网格中搜索包含您键入的术语的项目。这也会根据用户输入过滤网格 我希望通过将过滤器相互嵌套,使它们能够相互协同工作。我希望网格根据选择进行过滤,然后我希望用户能够在搜索栏中键入一些内容,并再次过滤已过滤的网格以查找匹配的项目 我在Telerik论坛上找到一篇帖子,告诉某人尝试类似的
dataSource.filter({
logic: 'or',
filters: [
{ field: "Id", operator: "eq", value: 33 },
{
logic: "and",
filters: [{ field: "Everything", operator: "contains", value: "s" }]
},
{ field: "Id", operator: "eq", value: 34 },
{
logic: "and",
filters: [{ field: "Everything", operator: "contains", value: "s" }]
}
]
});
我打算这样做的是为具有
(Id=33&&Everything.contains(“s”))| |(Id=34&&Everything.contains(“s”)
)的项筛选网格。如何修复此问题以使其正常工作?我相信您需要的筛选结构是:
dataSource.filter({
logic: 'or',
filters: [
{
logic: "and",
filters: [
{ field: "Everything", operator: "contains", value: "s" },
{ field: "Id", operator: "eq", value: 33 }
]
},
{
logic: "and",
filters: [
{ field: "Everything", operator: "contains", value: "s" },
{ field: "Id", operator: "eq", value: 34 }
]
}
]
});
尝试将该结构手动应用于网格,如果可行,您可以实现它。这就是解决方案。谢谢!