<!DOCTYPE html>
<html>
<head>
<title>Task Scheduler</title>
<link href="styles/kendo.common.min.css" rel="stylesheet" />
<link href="styles/kendo.default.min.css" rel="stylesheet" />
<script src="js/jquery.min.js"></script>
<script src="js/kendo.web.min.js"></script>
</head>
<body>
<!-- <button id="openButton">Open Window</button> -->
<div id="main" class="k-content">
<div id="tasklist"></div>
</div>
<script>
// Displays main widget
$(document).ready(function(){
$("#main").kendoWindow({
actions: ["Maximize", "Minimize", "Close"],
title: "Tasker",
visible: true,
width: "700px",
height: "300px"
}).data("kendoWindow");
var mainWindow = $("#main").data("kendoWindow");
mainWindow.center();
});
$(document).ready(function() {
var datasource = new kendo.data.DataSource({
transport: {
type: "odata",
read: {
url: "http://localhost:8282/tasker/retrieve",
dataType: "jsonp"
}
}
});
//alert(datasource);
$("#tasklist").kendoGrid({
dataSource: datasource,
schema: {
data: "results",
total: "Total",
aggregates: "AggregateResults",
errors: "Errors",
data: function(result) {
return result.results || results
},
total: function(data) {
data = data.results || data;
return data.length;
},
model: {
fields: {
id: { type: "number" },
name: { type: "string" },
description: { type: "string" },
schedule: {
id: { type: "number" },
startDateTime: { type: "number" },
endDateTime: { type: "number" },
interval: { type: "string" },
event: { type: "string" },
status: { type: "string" }
}
}
}
},
height: 200,
sortable: false,
scrollable: false,
resizable: false,
selectable: "row",
navigatable: false,
columns: [
{
field: "id",
title: "ID",
width: 50
},
{
field: "name",
title: "Name",
width: 120
},
{
field: "description",
title: "Description",
width: 200
}
]
});
});
</script>
</body>
</html>
11 Answers, 1 is accepted
I believe that the problem is caused by a syntax mistake - schema should be part of the DataSource, not the Grid. Also the type should be set to the DataSource object, not transport:
var
datasource =
new
kendo.data.DataSource({
type:
"odata"
,
transport: {
read: {
url:
"http://localhost:8282/tasker/retrieve"
,
dataType:
"jsonp"
}
},
schema: {
data:
"results"
,
total:
"Total"
,
aggregates:
"AggregateResults"
,
errors:
"Errors"
,
data:
function
(result) {
return
result.results || results
},
total:
function
(data) {
data = data.results || data;
return
data.length;
},
model: {
fields: {
id: { type:
"number"
},
name: { type:
"string"
},
description: { type:
"string"
},
schedule: {
id: { type:
"number"
},
startDateTime: { type:
"number"
},
endDateTime: { type:
"number"
},
interval: { type:
"string"
},
event: { type:
"string"
},
status: { type:
"string"
}
}
}
}
}
});
I hope this information will help. In case the data still does not show please:
- verify that you are using "odata" (usually our customers just copy that from the demo)
- verify that you are using jsonp - there is a difference between json and jsonp
- provide a sample of the Json response so I can examine it
Regards,
Alexander Valchev
Telerik
I made the prescribed changes you indicated and moved the datasource and grid together, but still not seeing the data. I have included my changes and the json I get from the server:
// Grid
$(document).ready(function() {
$("#tasklist").kendoGrid({
dataSource: {
type: "odata",
transport: {
read: {
url: "http://localhost:8282/task-scheduler/retrieve",
dataType: "jsonp"
}
},
schema: {
data: "results",
total: "Total",
aggregates: "AggregateResults",
errors: "Errors",
data: function(result) {
return result.results || results
},
total: function(data) {
data = data.results || data;
return data.length;
},
model: {
fields: {
id: { type: "number" },
name: { type: "string" },
description: { type: "string" },
schedule: {
id: { type: "number" },
startDateTime: { type: "number" },
endDateTime: { type: "number" },
interval: { type: "string" },
event: { type: "string" },
status: { type: "string" }
}
}
}
},
pageSize: 20,
serverPaging: true,
serverFiltering: true,
serverSorting: true
},
height: 200,
sortable: true,
scrollable: true,
pageable: true,
resizable: true,
selectable: "row",
columns: [
{
field: "id",
title: "ID",
width: 50
},
{
field: "name",
title: "Name",
width: 120
},
{
field: "description",
title: "Description",
width: 200
}
]
});
});
Here is the json from the server:
[{"id":2,"name":"Task One","description":"Task used for service testing.","schedule":[]},{"id":3,"name":"Task VKB","description":"Task used for service testing.","schedule":[{"id":3,"startDateTime":1370463273000,"endDateTime":1370549672000,"interval":"","event":"Data Scraping and Ingestion","status":"Running Task Now: Task VKB"}]}]
Thanks,
Luis
jQuery191013593195712156791_1370689953949({
"d" : {
"results": [
{
"__metadata": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10248)", "type": "SampleModel.Order"
}, "OrderID": 10248, "CustomerID": "VINET", "EmployeeID": 5, "OrderDate": "\/Date(836438400000)\/", "RequiredDate": "\/Date(838857600000)\/", "ShippedDate": "\/Date(837475200000)\/", "ShipVia": 3, "Freight": "32.38", "ShipName": "Vins et alcools Chevalier", "ShipAddress": "59 rue de l'Abbaye", "ShipCity": "Reims", "ShipRegion": null, "ShipPostalCode": "51100", "ShipCountry": "France", "Customer": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10248)/Customer"
}
}, "Employee": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10248)/Employee"
}
}, "Order_Details": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10248)/Order_Details"
}
}, "Shipper": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10248)/Shipper"
}
}
}, {
"__metadata": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10249)", "type": "SampleModel.Order"
}, "OrderID": 10249, "CustomerID": "TOMSP", "EmployeeID": 6, "OrderDate": "\/Date(836524800000)\/", "RequiredDate": "\/Date(840153600000)\/", "ShippedDate": "\/Date(836956800000)\/", "ShipVia": 1, "Freight": "11.61", "ShipName": "Toms Spezialit\u00e4ten", "ShipAddress": "Luisenstr. 48", "ShipCity": "M\u00fcnster", "ShipRegion": null, "ShipPostalCode": "44087", "ShipCountry": "Germany", "Customer": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10249)/Customer"
}
}, "Employee": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10249)/Employee"
}
}, "Order_Details": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10249)/Order_Details"
}
}, "Shipper": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10249)/Shipper"
}
}
}, {
"__metadata": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10250)", "type": "SampleModel.Order"
}, "OrderID": 10250, "CustomerID": "HANAR", "EmployeeID": 4, "OrderDate": "\/Date(836784000000)\/", "RequiredDate": "\/Date(839203200000)\/", "ShippedDate": "\/Date(837129600000)\/", "ShipVia": 2, "Freight": "65.83", "ShipName": "Hanari Carnes", "ShipAddress": "Rua do Pa\u00e7o, 67", "ShipCity": "Rio de Janeiro", "ShipRegion": "RJ", "ShipPostalCode": "05454-876", "ShipCountry": "Brazil", "Customer": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10250)/Customer"
}
}, "Employee": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10250)/Employee"
}
}, "Order_Details": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10250)/Order_Details"
}
}, "Shipper": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10250)/Shipper"
}
}
}, {
"__metadata": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10251)", "type": "SampleModel.Order"
}, "OrderID": 10251, "CustomerID": "VICTE", "EmployeeID": 3, "OrderDate": "\/Date(836784000000)\/", "RequiredDate": "\/Date(839203200000)\/", "ShippedDate": "\/Date(837388800000)\/", "ShipVia": 1, "Freight": "41.34", "ShipName": "Victuailles en stock", "ShipAddress": "2, rue du Commerce", "ShipCity": "Lyon", "ShipRegion": null, "ShipPostalCode": "69004", "ShipCountry": "France", "Customer": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10251)/Customer"
}
}, "Employee": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10251)/Employee"
}
}, "Order_Details": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10251)/Order_Details"
}
}, "Shipper": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10251)/Shipper"
}
}
}, {
"__metadata": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10252)", "type": "SampleModel.Order"
}, "OrderID": 10252, "CustomerID": "SUPRD", "EmployeeID": 4, "OrderDate": "\/Date(836870400000)\/", "RequiredDate": "\/Date(839289600000)\/", "ShippedDate": "\/Date(837043200000)\/", "ShipVia": 2, "Freight": "51.30", "ShipName": "Supr\u00eames d\u00e9lices", "ShipAddress": "Boulevard Tirou, 255", "ShipCity": "Charleroi", "ShipRegion": null, "ShipPostalCode": "B-6000", "ShipCountry": "Belgium", "Customer": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10252)/Customer"
}
}, "Employee": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10252)/Employee"
}
}, "Order_Details": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10252)/Order_Details"
}
}, "Shipper": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10252)/Shipper"
}
}
}, {
"__metadata": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10253)", "type": "SampleModel.Order"
}, "OrderID": 10253, "CustomerID": "HANAR", "EmployeeID": 3, "OrderDate": "\/Date(836956800000)\/", "RequiredDate": "\/Date(838166400000)\/", "ShippedDate": "\/Date(837475200000)\/", "ShipVia": 2, "Freight": "58.17", "ShipName": "Hanari Carnes", "ShipAddress": "Rua do Pa\u00e7o, 67", "ShipCity": "Rio de Janeiro", "ShipRegion": "RJ", "ShipPostalCode": "05454-876", "ShipCountry": "Brazil", "Customer": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10253)/Customer"
}
}, "Employee": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10253)/Employee"
}
}, "Order_Details": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10253)/Order_Details"
}
}, "Shipper": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10253)/Shipper"
}
}
}, {
"__metadata": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10254)", "type": "SampleModel.Order"
}, "OrderID": 10254, "CustomerID": "CHOPS", "EmployeeID": 5, "OrderDate": "\/Date(837043200000)\/", "RequiredDate": "\/Date(839462400000)\/", "ShippedDate": "\/Date(838080000000)\/", "ShipVia": 2, "Freight": "22.98", "ShipName": "Chop-suey Chinese", "ShipAddress": "Hauptstr. 31", "ShipCity": "Bern", "ShipRegion": null, "ShipPostalCode": "3012", "ShipCountry": "Switzerland", "Customer": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10254)/Customer"
}
}, "Employee": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10254)/Employee"
}
}, "Order_Details": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10254)/Order_Details"
}
}, "Shipper": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10254)/Shipper"
}
}
}, {
"__metadata": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10255)", "type": "SampleModel.Order"
}, "OrderID": 10255, "CustomerID": "RICSU", "EmployeeID": 9, "OrderDate": "\/Date(837129600000)\/", "RequiredDate": "\/Date(839548800000)\/", "ShippedDate": "\/Date(837388800000)\/", "ShipVia": 3, "Freight": "148.33", "ShipName": "Richter Supermarkt", "ShipAddress": "Starenweg 5", "ShipCity": "Gen\u00e8ve", "ShipRegion": null, "ShipPostalCode": "1204", "ShipCountry": "Switzerland", "Customer": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10255)/Customer"
}
}, "Employee": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10255)/Employee"
}
}, "Order_Details": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10255)/Order_Details"
}
}, "Shipper": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10255)/Shipper"
}
}
}, {
"__metadata": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10256)", "type": "SampleModel.Order"
}, "OrderID": 10256, "CustomerID": "WELLI", "EmployeeID": 3, "OrderDate": "\/Date(837388800000)\/", "RequiredDate": "\/Date(839808000000)\/", "ShippedDate": "\/Date(837561600000)\/", "ShipVia": 2, "Freight": "13.97", "ShipName": "Wellington Importadora", "ShipAddress": "Rua do Mercado, 12", "ShipCity": "Resende", "ShipRegion": "SP", "ShipPostalCode": "08737-363", "ShipCountry": "Brazil", "Customer": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10256)/Customer"
}
}, "Employee": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10256)/Employee"
}
}, "Order_Details": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10256)/Order_Details"
}
}, "Shipper": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10256)/Shipper"
}
}
}, {
"__metadata": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10257)", "type": "SampleModel.Order"
}, "OrderID": 10257, "CustomerID": "HILAA", "EmployeeID": 4, "OrderDate": "\/Date(837475200000)\/", "RequiredDate": "\/Date(839894400000)\/", "ShippedDate": "\/Date(837993600000)\/", "ShipVia": 3, "Freight": "81.91", "ShipName": "HILARION-Abastos", "ShipAddress": "Carrera 22 con Ave. Carlos Soublette #8-35", "ShipCity": "San Crist\u00f3bal", "ShipRegion": "T\u00e1chira", "ShipPostalCode": "5022", "ShipCountry": "Venezuela", "Customer": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10257)/Customer"
}
}, "Employee": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10257)/Employee"
}
}, "Order_Details": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10257)/Order_Details"
}
}, "Shipper": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10257)/Shipper"
}
}
}, {
"__metadata": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10258)", "type": "SampleModel.Order"
}, "OrderID": 10258, "CustomerID": "ERNSH", "EmployeeID": 1, "OrderDate": "\/Date(837561600000)\/", "RequiredDate": "\/Date(839980800000)\/", "ShippedDate": "\/Date(838080000000)\/", "ShipVia": 1, "Freight": "140.51", "ShipName": "Ernst Handel", "ShipAddress": "Kirchgasse 6", "ShipCity": "Graz", "ShipRegion": null, "ShipPostalCode": "8010", "ShipCountry": "Austria", "Customer": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10258)/Customer"
}
}, "Employee": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10258)/Employee"
}
}, "Order_Details": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10258)/Order_Details"
}
}, "Shipper": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10258)/Shipper"
}
}
}, {
"__metadata": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10259)", "type": "SampleModel.Order"
}, "OrderID": 10259, "CustomerID": "CENTC", "EmployeeID": 4, "OrderDate": "\/Date(837648000000)\/", "RequiredDate": "\/Date(840067200000)\/", "ShippedDate": "\/Date(838252800000)\/", "ShipVia": 3, "Freight": "3.25", "ShipName": "Centro comercial Moctezuma", "ShipAddress": "Sierras de Granada 9993", "ShipCity": "M\u00e9xico D.F.", "ShipRegion": null, "ShipPostalCode": "05022", "ShipCountry": "Mexico", "Customer": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10259)/Customer"
}
}, "Employee": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10259)/Employee"
}
}, "Order_Details": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10259)/Order_Details"
}
}, "Shipper": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10259)/Shipper"
}
}
}, {
"__metadata": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10260)", "type": "SampleModel.Order"
}, "OrderID": 10260, "CustomerID": "OTTIK", "EmployeeID": 4, "OrderDate": "\/Date(837734400000)\/", "RequiredDate": "\/Date(840153600000)\/", "ShippedDate": "\/Date(838598400000)\/", "ShipVia": 1, "Freight": "55.09", "ShipName": "Ottilies K\u00e4seladen", "ShipAddress": "Mehrheimerstr. 369", "ShipCity": "K\u00f6ln", "ShipRegion": null, "ShipPostalCode": "50739", "ShipCountry": "Germany", "Customer": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10260)/Customer"
}
}, "Employee": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10260)/Employee"
}
}, "Order_Details": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10260)/Order_Details"
}
}, "Shipper": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10260)/Shipper"
}
}
}, {
"__metadata": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10261)", "type": "SampleModel.Order"
}, "OrderID": 10261, "CustomerID": "QUEDE", "EmployeeID": 4, "OrderDate": "\/Date(837734400000)\/", "RequiredDate": "\/Date(840153600000)\/", "ShippedDate": "\/Date(838684800000)\/", "ShipVia": 2, "Freight": "3.05", "ShipName": "Que Del\u00edcia", "ShipAddress": "Rua da Panificadora, 12", "ShipCity": "Rio de Janeiro", "ShipRegion": "RJ", "ShipPostalCode": "02389-673", "ShipCountry": "Brazil", "Customer": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10261)/Customer"
}
}, "Employee": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10261)/Employee"
}
}, "Order_Details": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10261)/Order_Details"
}
}, "Shipper": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10261)/Shipper"
}
}
}, {
"__metadata": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10262)", "type": "SampleModel.Order"
}, "OrderID": 10262, "CustomerID": "RATTC", "EmployeeID": 8, "OrderDate": "\/Date(837993600000)\/", "RequiredDate": "\/Date(840412800000)\/", "ShippedDate": "\/Date(838252800000)\/", "ShipVia": 3, "Freight": "48.29", "ShipName": "Rattlesnake Canyon Grocery", "ShipAddress": "2817 Milton Dr.", "ShipCity": "Albuquerque", "ShipRegion": "NM", "ShipPostalCode": "87110", "ShipCountry": "USA", "Customer": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10262)/Customer"
}
}, "Employee": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10262)/Employee"
}
}, "Order_Details": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10262)/Order_Details"
}
}, "Shipper": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10262)/Shipper"
}
}
}, {
"__metadata": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10263)", "type": "SampleModel.Order"
}, "OrderID": 10263, "CustomerID": "ERNSH", "EmployeeID": 9, "OrderDate": "\/Date(838080000000)\/", "RequiredDate": "\/Date(840499200000)\/", "ShippedDate": "\/Date(838771200000)\/", "ShipVia": 3, "Freight": "146.06", "ShipName": "Ernst Handel", "ShipAddress": "Kirchgasse 6", "ShipCity": "Graz", "ShipRegion": null, "ShipPostalCode": "8010", "ShipCountry": "Austria", "Customer": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10263)/Customer"
}
}, "Employee": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10263)/Employee"
}
}, "Order_Details": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10263)/Order_Details"
}
}, "Shipper": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10263)/Shipper"
}
}
}, {
"__metadata": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10264)", "type": "SampleModel.Order"
}, "OrderID": 10264, "CustomerID": "FOLKO", "EmployeeID": 6, "OrderDate": "\/Date(838166400000)\/", "RequiredDate": "\/Date(840585600000)\/", "ShippedDate": "\/Date(840758400000)\/", "ShipVia": 3, "Freight": "3.67", "ShipName": "Folk och f\u00e4 HB", "ShipAddress": "\u00c5kergatan 24", "ShipCity": "Br\u00e4cke", "ShipRegion": null, "ShipPostalCode": "S-844 67", "ShipCountry": "Sweden", "Customer": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10264)/Customer"
}
}, "Employee": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10264)/Employee"
}
}, "Order_Details": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10264)/Order_Details"
}
}, "Shipper": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10264)/Shipper"
}
}
}, {
"__metadata": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10265)", "type": "SampleModel.Order"
}, "OrderID": 10265, "CustomerID": "BLONP", "EmployeeID": 2, "OrderDate": "\/Date(838252800000)\/", "RequiredDate": "\/Date(840672000000)\/", "ShippedDate": "\/Date(839808000000)\/", "ShipVia": 1, "Freight": "55.28", "ShipName": "Blondel p\u00e8re et fils", "ShipAddress": "24, place Kl\u00e9ber", "ShipCity": "Strasbourg", "ShipRegion": null, "ShipPostalCode": "67000", "ShipCountry": "France", "Customer": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10265)/Customer"
}
}, "Employee": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10265)/Employee"
}
}, "Order_Details": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10265)/Order_Details"
}
}, "Shipper": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10265)/Shipper"
}
}
}, {
"__metadata": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10266)", "type": "SampleModel.Order"
}, "OrderID": 10266, "CustomerID": "WARTH", "EmployeeID": 3, "OrderDate": "\/Date(838339200000)\/", "RequiredDate": "\/Date(841968000000)\/", "ShippedDate": "\/Date(838771200000)\/", "ShipVia": 3, "Freight": "25.73", "ShipName": "Wartian Herkku", "ShipAddress": "Torikatu 38", "ShipCity": "Oulu", "ShipRegion": null, "ShipPostalCode": "90110", "ShipCountry": "Finland", "Customer": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10266)/Customer"
}
}, "Employee": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10266)/Employee"
}
}, "Order_Details": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10266)/Order_Details"
}
}, "Shipper": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10266)/Shipper"
}
}
}, {
"__metadata": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10267)", "type": "SampleModel.Order"
}, "OrderID": 10267, "CustomerID": "FRANK", "EmployeeID": 4, "OrderDate": "\/Date(838598400000)\/", "RequiredDate": "\/Date(841017600000)\/", "ShippedDate": "\/Date(839289600000)\/", "ShipVia": 1, "Freight": "208.58", "ShipName": "Frankenversand", "ShipAddress": "Berliner Platz 43", "ShipCity": "M\u00fcnchen", "ShipRegion": null, "ShipPostalCode": "80805", "ShipCountry": "Germany", "Customer": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10267)/Customer"
}
}, "Employee": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10267)/Employee"
}
}, "Order_Details": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10267)/Order_Details"
}
}, "Shipper": {
"__deferred": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Orders(10267)/Shipper"
}
}
}
], "__count": "830"
}
})
Thank you for providing a sample of the server response. Straight to the question:
Does all json remote data need to be in this format in order for it to display in the Grid?
- No, the Json data doesn't have to be in this format. The problem is that your DataSource is configured to expect and load this format.
dataSource: {
//type: "odata",
//you are not using oData
transport: {
read: {
url:
"http://localhost:8282/task-scheduler/retrieve"
,
dataType:
"json"
//you are not using json
p
}
},
schema: {
data:
"results"
,
//there is no "results" field in the server response
total:
"Total"
,
//there is no "Total" field in the server response
aggregates:
"AggregateResults"
,
//there are no AggregateResults
errors:
"Errors"
,
//there are no "Errors"
model: {
fields: {
id: { type:
"number"
},
name: { type:
"string"
},
description: { type:
"string"
},
schedule: {
//dataSource's schema does not support complex data structures
id: { type:
"number"
},
startDateTime: { type:
"number"
},
endDateTime: { type:
"number"
},
interval: { type:
"string"
},
event: { type:
"string"
},
status: { type:
"string"
}
}
}
}
},
pageSize: 20,
serverPaging:
true
,
serverFiltering:
true
,
serverSorting:
true
},
Please try with the following (much simpler) configuration:
$(
"#tasklist"
).kendoGrid({
dataSource: {
transport: {
read: {
url:
"http://localhost:8282/task-scheduler/retrieve"
,
dataType:
"json"
}
},
schema: {
model: {
fields: {
id: { type:
"number"
},
name: { type:
"string"
},
description: { type:
"string"
}
}
}
},
pageSize: 20,
serverPaging:
true
,
serverFiltering:
true
,
serverSorting:
true
},
height: 200,
sortable:
true
,
scrollable:
true
,
pageable:
true
,
resizable:
true
,
selectable:
"row"
,
columns: [
{
field:
"id"
,
title:
"ID"
,
width: 50
},
{
field:
"name"
,
title:
"Name"
,
width: 120
},
{
field:
"description"
,
title:
"Description"
,
width: 200
}
]
});
For more information I suggest you to check this screencast as it explains how to catch the most common mistakes and how to resolve them.
- http://www.kendoui.com/blogs/teamblog/posts/13-01-02/screencast_debugging_kendo_ui_applications.aspx
Regards,
Alexander Valchev
Telerik
I have been trying to get a resolution to the Kendo Grid not displaying our server data in the grid. If I cannot get a resolution by today, I will be forced by my company to drop all evaluation efforts with the Kendo UI Web application and seek out another solution for HTML5 client application. Again, I need to know what parameters are needed for the "jsonp" callback request to our server. We are using Restful java-ws service with Jersey libs and wrapping the callback with use of JSONWithPadding response. From observation so far of your callback it appears that the following is needed in the callback in order for the grid to display data:
jQuery191023312488477329052_1370920121978({
"d" : {
"results": [
{
"__metadata": {
"uri": "http://demos.kendoui.com/service/Northwind.svc/Employees(1)", "type": "SampleModel.Employee"
}, "EmployeeID": 1, "LastName": "Davolio", "FirstName": "Nancy", "Title": "Sales Representative", ...
...
}
], "__count": "9"
}
})
I need to know what parameters are feed to the server request (i.e., jsonp) to get the required results from the server for display.
Thank you,
Luis
Thank you for updating me with the latest changes to my KendoGrid code. The changes you indicated were spot on as the data is now showing up on the Grid display! Also, the Chrome debugger helped out as well as I'm glad you sent me the link to the video.
Cheers,
Luis
I'm having pretty much the same issue.
Here's the model of the object I'm using:
public class DispatchBlock
{
/// <
summary
>
///
/// </
summary
>
public DispatchBlock()
{
}
public int BlockId { get; set; }
public string Name { get; set; }
public int CurrentRouteId { get; set; }
public string CurrentRouteName { get; set; }
public int VehicleId { get; set; }
public string VehicleName { get; set; }
public int EmployeeId { get; set; }
public string EmployeeName { get; set; }
}
Here's the controller method I'm using to get data(for now I'm just hard coding junk data until I get the UI to work):
[HttpPost]
public JsonResult GetDispatchBlocksForScheduleId([DataSourceRequest] DataSourceRequest request)
{
//if (ScheduleId.HasValue)
//{
List<
DispatchBlock
> blocks = new List<
DispatchBlock
>();
blocks.Add(new DispatchBlock()
{
BlockId = -1,
Name = "block name",
CurrentRouteId = -1,
CurrentRouteName = "route name",
VehicleId = -1,
VehicleName = "vehicle name",
EmployeeId = -1,
EmployeeName = "employee name"
});
blocks.Add(new DispatchBlock()
{
BlockId = -2,
Name = "Negative 2",
CurrentRouteId = -1,
CurrentRouteName = "route name",
VehicleId = -1,
VehicleName = "vehicle name",
EmployeeId = -1,
EmployeeName = "employee name"
});
blocks.Add(new DispatchBlock()
{
BlockId = -3,
Name = "Negative 3",
CurrentRouteId = -1,
CurrentRouteName = "route name",
VehicleId = -1,
VehicleName = "vehicle name",
EmployeeId = -1,
EmployeeName = "Becky Swain"
});
//}
IEnumerable<
DispatchBlock
> blocks2 = blocks;
DataSourceResult result = blocks2.ToDataSourceResult(request);
return Json(result);
}
$("#BlocksGrid").kendoGrid({
dataSource: {
transport: {
read: {
type: "POST",
url: "@Url.Action("GetDispatchBlocksForScheduleId", "Dispatch")",
contentType: "application/json; charset=utf-8",
dataType:"json"
}
},
requestStart: function() {
alert('start');
},
requestEnd: function() {
alert('end');
},
change: function() {
alert('change');
},
schema: {
data: "result",
total: "Total",
aggregates: "AggregateResults",
errors: "Errors",
data: function(result) {
return result.result || results
},
total: function(data) {
data = data.result || data;
return data.length;
},
model: {
fields: {
BlockId: { type: "number" },
Name: { type: "string" },
CurrentRouteId: { type: "number" },
CurrentRouteName: { type: "string" },
VehicleId: { type: "number" },
VehicleName: { type: "string" },
EmployeeId: { type: "number" },
EmployeeName: { type: "string" }
}
}
}
},
height: 400,
filterable: true,
sortable: true,
resizable: true,
pageable: false,
selectable: true,
schema: {
model: {
id: "BlockId"
}
},
columns: [
{
field: "BlockId",
hidden:true
},
{
field: "Name",
title: "Block",
filterable: false, width: 100
},
{
field: "CurrentRouteName",
title: "Current Route", width: 152
},
{
field: "VehicleName",
title: "Vehicle", width: 110
}, {
field: "EmployeeName",
title: "Driver", width: 95
}
], change: function (arg) {
alert('row selected');
}
});
I'm planning to make the controller method take a parameter eventually, but I can't even get this to work yet.
I first tried basing the js on the demo you mentioned earlier, but then it wouldn't even contact the controller. I'm running it in debug, and I've got a break point in the controller method. Doing it this way it contacts the controller, but then the grid never populates. It just continually shows the loading animated gif over it like it's still waiting on the controller, despite the fact that the requestEnd function was fired and the alert was triggered.
After more research I tried changing the events on the data source.
,
change: function(e) {
alert('change');
var view = this.view();
alert(view[0]);
//alert(this.View());
},
error: function(e){
alert('error '+e.errors);
}
Could you please provide a sample of the server response returned from the server? I want to check if its format corresponds to the schema configuration.
Regards,
Alexander Valchev
Telerik
I was never able to figure out how to get the response. Setting up the grid's datasource that way required me to put a DataSourceRequest in the method parameters and put my resposne as a DataSourceResult. Doing that makes it so if I try doing a regular AJAX call then it won't work because my parameters don't match.
I'm currently doing a work around where I get the data I need with a regular AJAX call, then on success I put the result into a datasource to give to the grid, but I'd like to be able to do it the proper way.
Probably some of these sample projects will be in help.
In case you are able to retrieve the data via regular Ajax request please post the request configuration and sample of the server response. I will examine the structure of the JSON data and help you configure the dataSource.
Regards,
Alexander Valchev
Telerik