Javascript 如何从剑道网格中的columnMenu列表中删除列

Javascript 如何从剑道网格中的columnMenu列表中删除列,javascript,jquery,kendo-ui,kendo-grid,Javascript,Jquery,Kendo Ui,Kendo Grid,我有一个剑道格网,如下所示: $("#grid-primaryUser").kendoGrid({ dataSource: UserDataSource, columns: [ { title: 'Is Approver', template: "<input type='checkbox'/>" }, { title: 'First Name',

我有一个剑道格网,如下所示:

$("#grid-primaryUser").kendoGrid({
    dataSource: UserDataSource,
    columns: [
        {
            title: 'Is Approver',
            template: "<input type='checkbox'/>"
        },
        {
            title: 'First Name',
            field: 'FirstName'
        },
        {
            title: 'Last Name',
            field: 'LastName'
        }
    ],
    toolbar: [
        { name: "save", text: app.common.resources.JS_.saveAll() }
    ],
    dataBound: function (e) {
        var grid = $("#grid-primaryUser").data("kendoGrid");
        var isAPACRegionOffice = $('#IsAPACRegionOffice').val() == 'True' ? true : false;
        if (grid != null && !isAPACRegionOffice) {
            grid.hideColumn(0);
            $("#grid-primaryUser").find(".k-grid-toolbar").detach();
        }
    },
    height: 250,
    groupable: false,
    sortable: true,
    pageable: false,
    resizable: true,
    reorderable: true,
    columnMenu: {
        messages: {
            sortAscending: app.common.resources.JS_.kendoGridColumnMenuSortAscending(),
            sortDescending: app.common.resources.JS_.kendoGridColumnMenuSortDescending(),
            columns: app.common.resources.JS_.kendoGridColumnMenuColumns(),
            unlock: app.common.resources.JS_Services_PropertyEventSearchService.kendoGridColumnMenuUnlock(),
            lock: app.common.resources.JS_Services_PropertyEventSearchService.kendoGridColumnMenuLock()
        }
    },
    columnMenuInit: function (e) {
        var item = e.container.find(".k-item k-state-default k-first");
        //item.prev(".k-separator").remove();
        item.remove();
    }
});
$(“#网格主要用户”).kendoGrid({
dataSource:UserDataSource,
栏目:[
{
标题:“是批准人”,
模板:“”
},
{
标题:“名字”,
字段:“名字”
},
{
标题:“姓氏”,
字段:“LastName”
}
],
工具栏:[
{name:“save”,文本:app.common.resources.JS_551;.saveAll()}
],
数据绑定:函数(e){
var grid=$(“#grid primaryUser”).数据(“kendoGrid”);
var isaparegionoffice=$('#isaparegionoffice').val()='True'?True:false;
if(grid!=null&!isAPACRegionOffice){
网格.hideColumn(0);
$(“#网格主用户”).find(“.k-grid-toolbar”).detach();
}
},
身高:250,
分组:false,
可排序:是的,
可分页:false,
可调整大小:正确,
可重定额:对,
列菜单:{
信息:{
排序设置:app.common.resources.JS_574;.kendoGridColumnMenuSortAscending(),
sortDescending:app.common.resources.JS_551;.kendoGridColumnMenuSortDescending(),
列:app.common.resources.JS_574;.kendoGridColumnMenuColumns(),
解锁:app.common.resources.JS_Services_PropertyEventSearchService.kendoGridColumnUnlock(),
lock:app.common.resources.JS_Services_PropertyEventSearchService.kendoGridColumnMenuLock()
}
},
columnMenuInit:函数(e){
var item=e.container.find(“.k-item k-state-default k-first”);
//item.prev(“.k-分隔符”).remove();
项。删除();
}
});
在这里,我可以根据
DataBound
属性中的
true
false
条件隐藏第一列,但在
columnMenu
列表中它仍在显示

如果第一列隐藏在网格中(从databound函数),并且需要在运行时完成,那么我也需要从
columnMenu
列表中删除第一列


我尝试使用
ColumnMenuInit
属性执行此操作,但这似乎不起作用,或者我可能缺少一些内容。

在相应列的配置中设置
菜单:false

这将允许您仅以编程方式隐藏和显示列