Jam*_*mar 3 asp.net json kendo-ui
我可以使用以下代码成功地对我的服务进行AJAX调用:
var serverData = { "ZoneParent": "123" };
var request = $.ajax({
type: "POST",
url: "/./Services/Reports.svc/getZones",
contentType: "application/json",
dataType: "json",
jsonp: null,
jsonpCallback: null,
data: JSON.stringify(serverData)
});
request.done(function (msg) {
alert(JSON.stringify(msg));
});
request.fail(function (jqXHR, textStatus) {
alert("Request failed: " + textStatus);
});
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试使用我的Kendo网格实现相同的调用时,我收到错误
传入消息具有意外的消息格式"原始".该操作的预期消息格式是'Xml','Json'
对于getZones.我的服务调用与DataTables一起工作正常,但我想潜在地切换到Kendo.我已经搞砸了好几天无济于事.该应用程序不是MVC.这是我的Kendo代码片段:
var dataSource = new kendo.data.DataSource({
transport: {
read: {
url: "/./Services/Reports.svc/getZones",
dataType: "JSON",
data: { zoneParent: "123" },
type: "POST"
},
parameterMap: function (data, operation) {
return kendo.stringify(data);
}
},
schema: {
data: "d"
}
});
var grid = $("#allGrids").kendoGrid({
dataSource: dataSource,
height: 200
});
Run Code Online (Sandbox Code Playgroud)
由于cfeduke提出了类似的建议,您可以尝试将contentType添加到传输读取配置的读取对象,就像在$ .ajax调用中一样.
例如
var dataSource = new kendo.data.DataSource({
transport: {
read: {
url: "/./Services/Reports.svc/getZones",
dataType: "json",
contentType: "application/json",
data: { zoneParent: "123" },
type: "POST"
},
parameterMap: function (data, operation) {
return kendo.stringify(data);
}
},
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6407 次 |
| 最近记录: |