我对剑道的东西有点了解,因此我正在寻求你的帮助。 我正在尝试使用xml数据显示一个kendo网格。但是网格的行显示为空。我正在尝试从URL(http://demos.kendoui.com/service/Northwind.svc/Products)获取数据并在kendo小部件上设置数据源。一旦我运行样本 (http://jsfiddle.net/visibleinvisibly/c3qsdjq0/19/)它显示空格。我相信这种情况正在发生,因为我无法在数据源的“schema”对象中设置“data”属性。我不想在这个示例中使用json
以下是示例Xml数据
<feed xml:base="http://demos.telerik.com/kendo-ui/service/Northwind.svc/" xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns="http://www.w3.org/2005/Atom">
.............................
...........................
<entry>
..................
....................
<content type="application/xml">
<m:properties>
<d:ProductID m:type="Edm.Int32">1</d:ProductID>
<d:ProductName>Chai</d:ProductName>
<d:UnitPrice m:type="Edm.Decimal">18.00</d:UnitPrice>
</m:properties>
</content>
</entry>
</feed>
架构中的data属性设置如下
schema: {
type: "xml",
data: "/feed/entry/content/properties",
model: {
fields: {
ProductID: "ProductID/text()",
ProductName: "ProductName/text()",
UnitPrice: "UnitPrice/text()"
}
}
}
提前致谢,
亚历克斯。
答案 0 :(得分:0)
@Alex-以下是我的分析 -
第1点 - 未显示数据
当我尝试在chrome中运行你的jsfiddle示例(http://jsfiddle.net/visibleinvisibly/c3qsdjq0/19/)时,我在控制台中得到以下错误 -
"XMLHttpRequest cannot load http://demos.kendoui.com/service/Northwind.svc/Products?take=10&skip=0&page=1&pageSize=10. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://fiddle.jshell.net' is therefore not allowed access."
这清楚地表明了为什么内容不会显示在您的Kendo UI网格中。
第2点 - 使用XML
我尝试使用AngularJS使用XML类型,我得到了以下错误 -
"Unknown DataSource transport type 'xml'.
Verify that registration scripts for this type are included after Kendo UI on the page."
我相信,这意味着它们是XML,因为不能使用数据源传输类型。您将不得不依赖JSON或ODaata。
希望这会有所帮助!
干杯 SANKET