剑道数据源刷新
Posted
技术标签:
【中文标题】剑道数据源刷新【英文标题】: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()... 没有任何效果
提前致谢 拉姆
【问题讨论】:
【参考方案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);
希望这对你有用:)
【讨论】:
以上是关于剑道数据源刷新的主要内容,如果未能解决你的问题,请参考以下文章