Kendo ui 设置选项不';重新绑定网格?剑道拳

Kendo ui 设置选项不';重新绑定网格?剑道拳,kendo-ui,dojo,telerik,kendo-grid,Kendo Ui,Dojo,Telerik,Kendo Grid,我正在尝试使用setOptions重新绑定我的网格,这似乎是一个合适的选项 目前我使用的是Kendo UI v2014.2.903,我尝试使用setOptions,但它不会重新加载我的网格 代码: <div id="grid"></div> <script> $("#grid").kendoGrid({ columns: [ { field: "name" }, { field: "age" }

我正在尝试使用setOptions重新绑定我的网格,这似乎是一个合适的选项

目前我使用的是
Kendo UI v2014.2.903
,我尝试使用setOptions,但它不会重新加载我的网格

代码:

<div id="grid"></div>
<script>
    $("#grid").kendoGrid({
        columns: [
          { field: "name" },
          { field: "age" }
        ],
        dataSource: [
            { name: "Jane Doe", age: 30 },
            { name: "John Doe", age: 33 }
        ]
    });

  setTimeout(function(){
    alert('update check')
    var grid = $("#grid").data("kendoGrid");
    grid.setOptions({
       columns: [
          { field: "name" },
          { field: "age" },
         { field: "code" }
        ],
         dataSource: [
            { name: "Jane Doe", age: 30,code:1 },
            { name: "John Doe", age: 33,code:11 }
        ]
    });
    grid.setDataSource([
            { name: "Jane Doe", age: 30,code:1 },
            { name: "John Doe", age: 33,code:11 }
        ]);
  },2000);
</script>

$(“#网格”).kendoGrid({
栏目:[
{字段:“名称”},
{字段:“年龄”}
],
数据源:[
{姓名:“Jane Doe”,年龄:30},
{姓名:“约翰·多伊”,年龄:33}
]
});
setTimeout(函数(){
警报('更新检查')
var grid=$(“#grid”).data(“kendoGrid”);
grid.setOptions({
栏目:[
{字段:“名称”},
{字段:“年龄”},
{字段:“代码”}
],
数据源:[
{姓名:“Jane Doe”,年龄:30岁,代码:1},
{姓名:“John Doe”,年龄:33岁,代码:11}
]
});
grid.setDataSource([
{姓名:“Jane Doe”,年龄:30岁,代码:1},
{姓名:“John Doe”,年龄:33岁,代码:11}
]);
},2000);
显示问题的示例

当我将版本更新为
2016.2.504
setOptions时,示例


如果有人能给我一些技巧来解决我在2014年版本中看到的问题,那将是很有帮助的

我认为这可能是一个bug,或者是剑道UI v2014.2.903的一个不受支持的特性(我不确定,我认为你应该在telerik论坛上发布一个真实的答案。我也很好奇)

但既然你想找点工作/黑客。一种方法是修改列,如下所示:

var grid = $("#grid").data("kendoGrid");
var ds = grid.dataSource;

grid.columns = [];
grid.thead.remove();
ds.data([{ name: "Jane Doe", age: 30,code:1 },
        { name: "John Doe", age: 33,code:11 }]);

这里有一个

看起来像是一个剑道UI v2014.2.903不支持setOptions方法,我相信它支持。此外,我看不出有任何未定义的错误;我可以在js文件v2014中看到函数定义@VivekParekh没有任何解决办法。干杯!我之前试过这个,谢谢你提出+1。使用这种方法(通过删除AD)的实际问题是,我们无法在呈现数据之前自定义网格列的显示。无论如何,谢谢。我要标记这一个,它一定是一种虫子。我想在telerik论坛上发帖,但我无法做到。干杯