如何使用脚本显示 Kendo Grid 列菜单

Posted

技术标签:

【中文标题】如何使用脚本显示 Kendo Grid 列菜单【英文标题】:How to show Kendo Grid's columnMenu using script 【发布时间】:2012-11-18 05:12:10 【问题描述】:

Kendo Grid 有一个非常棒的列上下文菜单(又名:columnMenu),您可以通过右键单击每个列标题来访问它。通过将 Kendo Grid 中的字段设置为:

columnMenu: 真

启用 columnMenu 后,它会在网格中显示列,并允许您显示/隐藏列、对其进行排序和过滤。但是,我们需要将此列菜单移到网格之外并将其绑定到一个按钮。所以当用户点击一个按钮时,就会出现列菜单。有没有办法通过 javascript 调用它?

此请求类似于 Michiel 提出的请求(2012 年 3 月 5 日)。然而,在那个特定的情况下,它是对不同产品 Telerik MVC Grid 的 contextMenu 的请求。 Michiel 问题的 URL 如下作为参考:http://www.telerik.com/community/forums/aspnet-mvc/grid/how-to-show-column-context-menu-using-script.aspx

【问题讨论】:

【参考方案1】:

就像触发栏目点击事件一样简单:

$("#grid .k-header-column-menu:first").click();

这是一个工作演示:http://jsbin.com/ihivif/2/edit

【讨论】:

感谢阿塔纳斯的快速回复。是否也可以将列上下文菜单移动到 X、Y 坐标,然后通过 javascript 触发它?因此需要以下内容:1)用户单击按钮 2)列上下文菜单出现在按钮正下方 3)用户选择要在 Kendo Grid 中显示或隐藏的列 Michiel 问题的响应似乎提供了一个定位菜单的方式。我们也可以为 Kendo Grid 这样做吗? 是的。我修改了我的 jsbin 演示。 成功了,非常感谢 Atanas - 在 jsbin 中编写示例代码帮助很大! 如果您有columnMenu: false 并且您只想在单击某个按钮时显示带有复选框的列列表。这可能吗?

以上是关于如何使用脚本显示 Kendo Grid 列菜单的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Kendo Grid 中隐藏列组

如何在列模板中使用kendo网格聚合值

Kendo Grid 可过滤单元格

Kendo Grid:如何使用列模板以便编辑器始终可用?

如何从控制器更新 Kendo UI Grid 数据源?

如何根据 Kendo-Angular2-grid 中的数据自动调整网格列的大小?