Angularjs 如何刷新KendoUI/Angular grid的列
根据KendoUI/Angular documentation(),网格不支持在小部件实例化后重新定义列。这就是剑道提供Angularjs 如何刷新KendoUI/Angular grid的列,angularjs,kendo-ui,kendo-grid,Angularjs,Kendo Ui,Kendo Grid,根据KendoUI/Angular documentation(),网格不支持在小部件实例化后重新定义列。这就是剑道提供k-ng-delay关键字的原因。这很好,但是我需要多次重新定义网格列,而不是一次。有没有办法在Angular中以编程方式重新创建网格?或者关于如何多次重新定义网格列的任何其他想法?您应该使用k-rebind属性在某些范围变量更改时自动更新小部件: 例如: <div kendo-grid="grid" k-options="gridOptions" k-rebind="g
k-ng-delay
关键字的原因。这很好,但是我需要多次重新定义网格列,而不是一次。有没有办法在Angular中以编程方式重新创建网格?或者关于如何多次重新定义网格列的任何其他想法?您应该使用k-rebind属性在某些范围变量更改时自动更新小部件:
例如:
<div kendo-grid="grid" k-options="gridOptions" k-rebind="gridOptions">
</div>
在本例中,我指定如果gridOptions范围变量被更新,则需要销毁并重新创建网格
我创建了一个演示:
希望这有帮助 我想进一步介绍一下保罗·索托的回答(谢谢!) 我正在自动生成列,这就是我如何重新绑定到全新的resultset+列架构的方式:
var grid=$(“#grid”).data(“kendoGrid”);
$scope.mainGridOptions.columns=columnSchema.columns;
$scope.mainGridOptions.dataSource.schema=columnSchema.schema;
$scope.mainGridOptions.dataSource.data=数据代码>
网格如下所示:
<kendo-grid id="grid" class="qs-site-plannerGrid" k-options="mainGridOptions" k-rebind="mainGridOptions"> </kendo-grid>
据我所知,没有直接的方法,但您可以从该div/parent中删除元素(网格),并使用新配置或列和数据重新创建整个网格。如何以角度重新创建网格?使用jquery?我对angular不太熟悉,因此无法评论如何实现网格重建。但是使用Jquery/JS要简单得多。可能重复我尝试使用k-rebind,但遇到了很多问题,最终将Jquery KendoGrid包装到一个目录中。您的解决方案工作正常,但。。。不起作用