Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/422.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 网格中使用数据的剑道数据源没有数据_Javascript_Kendo Ui_Datasource - Fatal编程技术网

Javascript 网格中使用数据的剑道数据源没有数据

Javascript 网格中使用数据的剑道数据源没有数据,javascript,kendo-ui,datasource,Javascript,Kendo Ui,Datasource,我在MVC应用程序中有一个用C#编写的剑道数据源。此剑道数据源检索状态列表和相应的时间段(作为时间跨度) var statesDataSource = new kendo.data.DataSource({ transport: { read: { url: '@(Url.Action("Action", "Controller", new { id = id}))', dataType: "json",

我在MVC应用程序中有一个用C#编写的剑道数据源。此剑道数据源检索状态列表和相应的时间段(作为时间跨度)

    var statesDataSource = new kendo.data.DataSource({
    transport: {
        read: {
            url: '@(Url.Action("Action", "Controller", new { id = id}))',
            dataType: "json",
            success: function (result) {
                debugger;
                console.log(result);
                CreateTestSetupUsageStatisticsChart();
                CreateTestSetupUsageStatisticsGrid();
            },
            error: function (xhr, error) {
                debugger;
                console.log(xhr);
                console.log(error);
            }
        }
    },
然后,我使用
statesDataSource.fetch();
检索数据,并可以在Chrome网络选项卡中查看请求和响应。当我访问此数据源的数据时,我可以看到:

statesDataSource.data()
[
- nt.extend.init
    Duration: nt.extend.init
        Days: 0,
        Hours: 0,
        Milliseconds: 94,
        Minutes: 0,
        Seconds: 56,
        Ticks: 560940000,
        TotalDays: 0.0006492361111111111,
        TotalHours: 0.015581666666666666,
        TotalMilliseconds: 56094,
        TotalMinutes: 0.9349000000000001,
        TotalSeconds: 56.093999999999994
    HumanReadableDuration: "56s"
    State: "Broken"
    _events: Object
    parent: function (){return r
    uid: "4a9044ec-921c-48c7-9234-f569aacebc10"
    __proto__: i
+ nt.extend.init, 
+ nt.extend.init, 
+ nt.extend.init, 
+ nt.extend.init, 
+ nt.extend.init, 
+ nt.extend.init
]
所以有结果。我想在剑道格网和图表中使用它们,但问题是,当我使用以下命令创建格网时,它是空的:

$("#grid").kendoGrid({
    datasource: statesDataSource,
    columns: [{
        field: "State",
        title: "State",
    }, {
        field: "HumanReadableDuration",
        title: "Duration"
    }]
});
当我使用$(“#grid”).data(“kendoGrid”).datasource.data()从剑道访问数据源时,它也是空的。我还尝试使用
datasource:{data:statesDataSource}
datasource:{data:statesDataSource.data()}
但没有成功

我还尝试将Datasource直接用于剑道网格,但效果相同:

    $("#grid").kendoGrid({
        datasource: {
            transport: {
                read: {
                    url: '@(Url.Action("Action", "Controller", new { id = id}))',
                    dataType: "json",
                }
            }
        },
        columns: [{
            field: "State",
            title: "State",
        }, {
            field: "HumanReadableDuration",
            title: "Duration"
        }]
    });
这根本不起作用。我从服务器收到的数据是一个结构正确的JSON:

[
{
    "State":"Broken",
    "Duration":
    {
        "Hours":0,
        "Minutes":0,
        "Seconds":56,
        "Milliseconds":94,
        "Ticks":560940000,
        "Days":0,
        "TotalDays":0.00064923611111111106,
        "TotalHours":0.015581666666666666,
        "TotalMilliseconds":56094,
        "TotalMinutes":0.93490000000000006,
        "TotalSeconds":56.093999999999994
    },
    "HumanReadableDuration":"56s"
},
...
]

这是TimeSpan变量的问题吗?还是我现在缺少了什么?我现在很专注,因为我从昨天起就无法让它工作。任何新的想法或见解都会非常有用。

您是否尝试过添加
datasource.read()
是的,它没有改变任何东西。我通过在chrome的控制台中键入来显示网格(加载页面后,没有显示任何内容)
$(“#网格”).data(“kendoGrid”).setDataSource(statesDataSource)
。当我在图表上尝试时,我得到一个错误
未捕获引用错误:未定义状态
。状态是来自数据源的字段(它在那里,并且总是作为字符串正确初始化)。这听起来像是操作顺序错误。我建议粘贴整个查看页面。是的,请将所有代码放在合理的块中。您需要一个包含此数据集的架构。请包括该部分。