kendo-ui - KendoUI 网格以编程方式创建列

标签 kendo-ui kendo-grid

我有一个带有 KendoUI DropDownList 的应用程序,其中填充了数据库中的表列表和最初使用空数组的列属性设置的网格:

... 列: [] ...

目的是从列表中选择一个表,将表名称发送到服务器,并让服务器返回包含列名称和“SELECT * FROM table”查询中的数据的 JSON 数据。数据按预期返回,第一次我可以按如下方式使用它,其中“self”只是对我的 View /模型中网格的引用:

self.columns.removeAll();

for (var i = 0; i < joOutput["Cols"].length; i++) {
   var col = { title: joOutput["Cols"][i], field: joOutput["Cols"][i] };

   self.columns.push(col);
   } 

提取我的数据并将其分配给网格数据源后,网格会正确显示,并包含正确的列标题和数据。但是,当我从列表中选择另一个表并从服务器接收数据时,网格显示不会更新,即使通过执行上述代码似乎网格列已更新。屏幕上的结果是列标题,即第一个网格中的列名称以及第二个查询返回的行中的空行数。

http://www.kendoui.com/forums/ui/grid/dynamically-add-new-column.aspx 的论坛帖子中可以看出,这种对列的动态操作似乎非常困难。但这篇文章已经发布一年多了,我希望现在能在这方面取得一些进展,特别是考虑到 3 月 20 日新版本的最新网络广播。所以我想问题依然存在:我所追求的是否可能,或者我是否可以?谢谢。

最佳答案

初始化后无法动态更改网格的列。但是,您可以创建一个新的网格实例。不要忘记调用旧网格的 destroy 方法。

关于kendo-ui - KendoUI 网格以编程方式创建列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15561403/

相关文章:

javascript - Kendo UI Treeview 追加函数性能

kendo-ui - kendo UI Treeview 抛出异常 - r.Dragging 不是函数

javascript - 如何使 "add new record"将字段表示为复选框 - Kendo Grid

javascript - kendo ui 网格分组不区分大小写

javascript - 如何获取分组 Kendo 网格中选定行的索引和数据

jquery - 自定义命令的 kendo ui 工具提示

jquery - 如何在 Kendo UI 图表上包装 categoryAxis 文本

javascript - 在 Angular-Kendo Treeview 中,使用类名隐藏/显示跨度元素

kendo-ui - 剑道网格MVC : default filter for string fields is set to "is equal to"

kendo-ui - 在过滤过程中显示弹出 View