Kendo ui 剑道网格数据源更新方法不起作用
我有JSON数据通过Pusher流到一个简单的MVC5网站,其中包含一个剑道网格。数据到达后,在网格中成功呈现,但我每次都在创建和设置数据源。由于这似乎是有罪的,我试图确定为什么我简单地更新数据源的方法不能呈现数据 网格:Kendo ui 剑道网格数据源更新方法不起作用,kendo-ui,grid,datasource,Kendo Ui,Grid,Datasource,我有JSON数据通过Pusher流到一个简单的MVC5网站,其中包含一个剑道网格。数据到达后,在网格中成功呈现,但我每次都在创建和设置数据源。由于这似乎是有罪的,我试图确定为什么我简单地更新数据源的方法不能呈现数据 网格: <div id="dashboard"></div> <script> $(document).ready(function () { $("#dashboard").kendoGrid({
<div id="dashboard"></div>
<script>
$(document).ready(function () {
$("#dashboard").kendoGrid({
columns: [
{ field: "SystemName", width: "50px", title: "System" },
{ field: "Description", width: "100px", title: "Description" },
{ field: "SystemStatus", width: "30px", title: "Status" }
],
height: 600,
scrollable: true,
sortable: true,
});
var dataSource = new kendo.data.DataSource();
var grid = jQuery("#dashboard").data("kendoGrid");
grid.setDataSource(dataSource);
})
</script>
我已经确认数据从Pusher正确到达,但上述方法不会更新网格
提前感谢您的考虑
jbt使用数据源上的data()方法设置其数据
var array = JSON.parse(data.updateGrid);
var grid = jQuery("#dashboard").data("kendoGrid");
grid.dataSource.data(array);
如果数据源是XML类型,则只能在数据源上设置数据的字符串值。因为您使用的是JSON,所以需要调用data函数并传入新数据
请参阅文档
var array = JSON.parse(data.updateGrid);
var grid = jQuery("#dashboard").data("kendoGrid");
grid.dataSource.data(array);