如果我使用下面注释掉的第二个读数,则网格显示我的数据。如果我使用第一个,我可以看到我的数据在Fiddler中返回,但网格不显示它。
var $nisGridDataSource = new kendo.data.DataSource({
transport: {
read: function () {
DataService.newIssuesStatistics();
}
//read: {
//url: "/api/PoolApi/NewIssuesSecurities"
//}
}
...
这是成功调用的DataService.newIssuesStatistics方法:
newIssuesSecurities = function () {
return $.ajax({
url: "/api/PoolApi/NewIssuesSecurities"
});
有谁能说明为什么会这样?
答案 0 :(得分:1)
您必须告诉Kendo UI DataSource它已收到数据。你的函数Dataservice.newIssuesStatistics()
是如何实现的?它会回复承诺吗?让我们说它的确如此,那么你就是这样做的:
var dataSource = new kendo.data.DataSource({
transport: {
read: function(options) {
Dataservice.newIssuesStatistics().done(function(stats) {
options.success(stats);
});
}
}
});
答案 1 :(得分:0)
我最终得到了这个。谢谢布雷特。我现在看到的是一个完整的代码示例。再次感谢Brett!
var $nisGridDataSource = new kendo.data.DataSource({
transport: {
read: function (options) {
DataService.newIssuesStatistics()
.done(function (result) {
// notify the data source that the request succeeded
options.success(result);
})
.fail(function (result) {
// notify the data source that the request failed
options.error(result);
});
}
}