我试图将HTML表转换为KendoGrid,但在执行此时出错
$("#ReportExport").kendoGrid({
toolbar: ["excel"],
filterable: { mode: "row" },
pageSize: 25,
sortable: true,
columnMenuInit(e) {
e.container.find('li[role="menuitemcheckbox"]:nth-child(1)').remove();
e.container.find('li[role="menuitemcheckbox"]:nth-child(4)').remove();
},
columnMenu: {
filterable: false
},
reorderable: true,
resizable: true,
pageable: {
alwaysVisible: true,
pageSizes: [25, 100]
},
});
控制台上写着未捕获的类型错误:无法读取N(kendo.all.js:7692(上未定义的属性"nodeName">
此错误可能是由于脚本尝试访问元素时元素不可用。
您可以尝试在document.ready函数上插入代码,以确保DOM已加载,或者在运行代码之前检查元素是否可用。
我得到了这个。事实上,我不知道$("#GridName").KendoGrid()
和$("#GridName").data('kendoGrid')
之间的区别。第一个基本上初始化网格。稍后,如果要操作网格,则必须首先使用第二种方法在变量中获取网格。所以问题就在这里
columnMenuInit(e) {
e.container.find('li[role="menuitemcheckbox"]:nth-child(1)').remove();
e.container.find('li[role="menuitemcheckbox"]:nth-child(4)').remove();
}
由于我使用的方法是用于初始化,所以网格无法执行所需的功能。感谢迪奥戈·佩雷斯给了我正确的方向。