gpt4 book ai didi

javascript - 仅针对一列启用 Kendo 网格中的列菜单,并在页面加载时默认隐藏特定列

转载 作者:行者123 更新时间:2023-12-02 21:10:10 25 4
gpt4 key购买 nike

我想仅在剑道网格的一个特定列中提供列菜单选项。另外,当页面加载时,我想显示一个特定列并隐藏其他列。用户可以从其中一列中提供的列菜单选项中选择其他(隐藏)列。

我做了类似的事情来隐藏某些列的列菜单:

<body>
<div id="example">
<div id="grid"></div>

<script>
$(document).ready(function () {
$("#grid").kendoGrid({
dataSource: {
type: "odata",
transport: {
read: "//demos.telerik.com/kendo-ui/service/Northwind.svc/Orders"
},
schema: {
model: {
fields: {
OrderID: { type: "number" },
ShipCountry: { type: "string" },
ShipName: { type: "string" },
ShipAddress: { type: "string" }
}
}
},
pageSize: 30,
serverPaging: true,
serverFiltering: true,
serverSorting: true
},
height: 550,
pageable: true,
columnMenu: true,
columns: [{
field: "OrderID",
title: "Order ID",
width: 120
}, {
field: "ShipCountry",
title: "Ship Country"
}, {
field: "ShipName",
title: "Ship Name"
}, {
field: "ShipAddress",
filterable: false
}
]
});
});
$(function(){
$('#grid .k-header-column-menu').eq(0).hide();
$('#grid .k-header-column-menu').eq(1).hide();
$('#grid .k-header-column-menu').eq(2).hide();
})

</script>
</div>
</body>

有没有更好的方法来实现这两个功能?

最佳答案

我有类似的请求,但我没有将列菜单放在一列中,而是将其放在工具栏部分的外部,此外,我在同一模板中添加了导出按钮。

var toolbarTemplate = '<div id="column-menu-button" style="float:left" ></div>';
var templ = '<div class="toolbar buttons-wrap" style="text-align: right;"><div id="toolbar"></div></div>';


var grid = $("#grid").kendoGrid({
toolbar: kendo.template(templ),
columns: [
{field: "name", menu: true, hidden: true},
{field: "age", menu: false}
],
sortable: true,
dataSource: [
{name: "Jane Doe", age: 30},
{name: "John Doe", age: 33}
]
}).getKendoGrid();

var createKendoColumnMenu = function (id, dataSource, owner) {
var kendoColumnMenu = $(id).kendoColumnMenu({
dataSource: dataSource,
filterable: false,
sortable: false,
columns: true,
owner: owner,
});
};

var createKendoToolBar = function (id) {
var kendoToolBar = $(id).kendoToolBar().getKendoToolBar();

return kendoToolBar;
};

createKendoToolBar('#toolbar').add({
template: toolbarTemplate,
id: 'column-menu',
overflow: 'never'
});

createKendoColumnMenu('#column-menu-button', grid.dataSource, grid);

检查我的示例:Custom toolbar

关于javascript - 仅针对一列启用 Kendo 网格中的列菜单,并在页面加载时默认隐藏特定列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61120477/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com