从剑道ui网格中删除Columnmenu.columns

Remove Columnmenu.columns from kendo ui grid

本文关键字:删除 Columnmenu columns 网格 ui      更新时间:2024-05-14

我今天正在使用KENDO UI网格,我需要在一个网格中,列菜单中有活动的项目"升序、降序、列、筛选",但我也需要"列"项目在其他列中消失,这样ppl只能从第一列隐藏。例如在这个代码

<div id="grid"></div>
<script>
$("#grid").kendoGrid({
    columnMenu:true,
    filterable: true,
    sortable: true,
    columns: [
        { field: "productName" },
        { field: "category" }
    ],
    dataSource: [
       { productName: "Tea", category: "Beverages" },
        { productName: "Coffee", category: "Beverages" },
        { productName: "Ham", category: "Food" },
        { productName: "Bread", category: "Food" }
    ]
});
</script>

结果是,在每一列中,我都会得到一个有4个项目的男人:

  1. 升序排序
  2. 降序排序
  3. 过滤器

现在我需要的是,只有"productName"列有所有4个声音,而对于"category"列(以及其他所有可能的列),菜单声音只包含:

  1. 升序排序
  2. 降序排序
  3. 过滤器

这可能吗?

任何建议的ty

不能直接配置,但可以删除Grid的columnMenuInit事件上的"columns"菜单项(请参阅http://docs.telerik.com/kendo-ui/api/javascript/ui/grid#events-columnMenuInit):

columnMenuInit: function(e) {
  // Only remove if column is not 'productName'
  if (e.field != "productName") {
    // Remove the item from the menu via JQuery
    e.container.find(".k-columns-item").remove();
  }
}