【问题标题】:Kendo Datasource refresh剑道数据源刷新
【发布时间】:2016-08-18 17:02:59
【问题描述】:
我遇到了同样的问题,我在堆栈溢出中提出的上一个问题中遇到了同样的问题,但没有成功的答案,谁能指导我。
Kendo ui datasource refresh?
我正在使用 Angular js 绑定网格,假设我正在显示列“jan2016,feb2016”这两个 cilumns 完美显示,但是当我返回并再选择一个月“mar2016”时,网格不会刷新显示 mar2016
我使用了 k-rebind、datasource.read()、datasource.refresh()... 没有任何效果
提前致谢
拉姆
【问题讨论】:
标签:
jquery
asp.net
angularjs
kendo-ui
【解决方案1】:
虽然 Erick 的回答可能会奏效,但不要在重建你的剑道小部件时破坏,首先尝试做
$("#grid").data("kendoGrid").setDataSource(datasource)
它的代码少得多,而且它是更改数据源的一种更简洁的方式
【解决方案2】:
我遇到了完全相同的问题,并且很难从堆栈和剑道论坛中获得答案,我想出的是以下内容:
首先我通过将响应对象保存在新对象中来存储数据源
var DataSourceObj = new []; //some ajax response
那我彻底破坏网格
var grid = $("#grid").data("kendoGrid");
grid.destroy();
然后我重新初始化网格并绑定DataSourceObj(通常将其放在函数闭包中以将其绑定到多个位置)
function initGrid(datasource) {
$("#grid").kendoGrid({
selectable: "row",
allowCopy: true,
columns: [
{ field: "productName" },
{ field: "category" }
],
dataSource: datasource, // bind here
pageable: {
pageSize: 10
}
});
}
//call initGrid and pass datasource
initGrid(DataSourceObj);
希望这对你有用:)