动态更改 kendo 网格列擦除元素属性值

Dynamically change kendo grid columns wipes element properties values

我需要为每个选定的过滤器动态重建我的 kendo 网格列,因此我调用此代码:

setGridDefinition: function (grid, gridId, gridDef) {
    var options = grid.options;
    options.columns = gridDef.columns;
    options.groupable = gridDef.groupable;
    options.sortable = gridDef.sortable;
    options.selectable = gridDef.selectable;
    options.pageable = gridDef.pageable;
    options.scrollable = gridDef.scrollable;
    options.filterable = gridDef.filterable;
    options.resizable = gridDef.resizable;
    grid.destroy();
    $("#" + gridId).empty().kendoGrid(options);
},

问题是网格现在缺少一些非常重要的 属性 值,例如元素、内容等

仍然具有值的唯一属性是:columns、dataSource、options、_cellId、_data、_events。

关于如何不丢失它们或如何重建它们有什么想法吗?

我从 MVC 代码构建网格,在选择一些过滤器后,我从 JavaScript 重建它(如果它提供任何线索)。

谢谢

感谢@Orilux,我在尝试'grid.options = gridDef'.

之类的方法之前使用了setOptions方法

现在我的代码是这样的并且它有效:

setGridDefinition: function (grid, gridId, gridDef) {
    grid.setOptions(gridDef);
},