【问题标题】:Kendo data source not working剑道数据源不工作
【发布时间】:2023-03-09 21:05:01
【问题描述】:

我是使用 Kendo 数据源的新手,但到目前为止它无法正常工作。我的页面非常简单。

<head>
    <meta name="viewport" content="width=device-width" />
    <title>View Quote Lists</title>
    <link href="/Content/bootstrap.min.css" rel="stylesheet" />
    <link href="/styles/kendo.common.min.css" rel="stylesheet" />
    <link href="/styles/kendo.default.min.css" rel="stylesheet" />
    <link href="/styles/kendo.dataviz.min.css" rel="stylesheet" />
    <link href="/styles/kendo.dataviz.default.min.css" rel="stylesheet" />

</head>
<body>
    <div>

    </div>
    <script src="/Scripts/jquery-2.1.3.min.js"></script>
    <script src="/Scripts/kendo.all.min.js"></script>
    <script src="/Scripts/bootstrap.min.js"></script>

    <script>
        var query = "3";
        var dataSource = new kendo.data.DataSource({
            transport: {
                read: {
                    url: "/api/QuoteAPI?page=1",
                    dataType: "json"
                },
                requestEnd: function() {
                    console.log(JSON.stringify(dataSource.data()))
                }
            }
        });
        dataSource.read();


    </script>

</body>

从服务返回的服务器数据集是一个对象,如下所示: { {"QuoteCount":13393,"CurrentPage":1,"Quotes":[{"QuoteID":"B0339420-52C1-4762-8F41-474BE601E872","QuoteNo":"00014857","QuoteDate":"2015.03. 09","netgainID":"5BDF1655-CB35-4326-80E3-6DCA0CC00C8B","Qty":1.0,"SKU":"CC1512570","Product":"WELDMNT,ANTLER FRAME","价格":186.66, "Customer":"Grady Health Systems","re​​pID":"{CA7A9606-8EAB-447E-934E-C52B4D8E06C6}","Rep":"Kirkland, Travis"},{"QuoteID":"B0339420-52C1-4762 -8F41-474BE601E872","QuoteNo":"00014857","QuoteDate":"2015.03.09","netgainID":"8DBF5603-DAED-4DF8-89FD-1A172CA3589E","Qty":4.0,"SKU": "CC0900265","产品":"前地板 (PR) 175 套件","价格":28.95,"客户":"Grady Health Systems","re​​pID":"{CA7A9606-8EAB-447E-934E-C52B4D8E06C6 }","Rep":"柯克兰,特拉维斯"}......]

当我加载页面时调用网络服务并返回我可以使用谷歌工具看到的数据。但是 dataSource.read() 行给出了错误

Uncaught TypeError: undefined is not a function kendo.all.min.js:11

永远不会调用 requestEnd 函数,因此即使调用了它,我也看不到数据。

谁能告诉我为什么这不起作用。我已经尝试了所有看起来合适的文档变体,但这拒绝工作。

谢谢, 特里

【问题讨论】:

  • 您可以考虑对您的问题重新措辞多一点,使其看起来不像是支持请求,而更像是编程问题。就目前而言,您的问题很有可能因离题而被关闭。
  • 我确实理解您的陈述,但我希望有人能提出一种从 javascript 角度隔离正在发生的事情并帮助找到问题的方法。在我在浏览器中查看的页面上,有十几个特定于 Kendo 的相关主题也可以确定支持。我已经把这个带到 Telerik 了,到目前为止的立场是它应该可以工作。我希望其他人有更好的主意,否则我将不得不放弃使用我猜的库。不过感谢您的回复。

标签: kendo-ui


【解决方案1】:

您可以将 requestEnd 移出传输块并尝试吗?如果它不能帮助创建一个剑道道场来复制问题,以便在那里更容易解决它。

这是一个dojo,其代码类似,但我使用的是 jsonp。

【讨论】:

  • 你错过了什么吗?我在评论中看不到你的数据。
  • 看看上面 - 尽管数据源不会运行,但我采纳了您的建议并组装了一个道场。我还在答案中显示了我的返回数据结构,这样我就有足够的空间做出回应。
  • 感谢您的帮助。这指出了传输块的问题,最终使我能够获得返回数据的东西。我的错误似乎是试图将 Telerik 数据源用作复杂数据的通用数据源。根据他们的技术支持,它实际上仅适用于其控件上使用的平面数据,并且没有规定处理“控件无用”的数据(用他们的话来说)。再次感谢。
猜你喜欢
  • 2016-08-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-29
相关资源
最近更新 更多