У меня есть json, возвращающийся из API, который не является последовательным, что означает, что некоторые записи имеют «возраст», связанный с ними, а другие - нет.
Я пытаюсь заполнить сетку пользовательского интерфейса Kendo, чтобы отображать/манипулировать данными. К сожалению, когда записи, не связанные с «Возрастом», возвращаются вместе с записями, в которых он есть, кендо прерывается с ошибкой: Uncaught ReferenceError: Возраст не определен
Вот пример рабочей сетки: http://jsfiddle.net/tmort/CVkpF/
А вот сетка с возвратом одной записи без "Возраст": http://jsfiddle.net/tmort/CVkpF/1/ — ошибка отображается в консоли, а не на самой странице.
Есть ли способ сделать сетку достаточно динамичной, чтобы понять, что возраст не вернулся, установить для нее значение null, а затем продолжить?
Код, который я использую:
var data = [
{
FirstName: 'John',
LastName: 'Doe',
City: 'New York City',
Title: 'Supervisor',
BirthDate: '1/1/1975',
Age: '37',
},
{
FirstName: 'Jane',
LastName: 'Doe',
City: 'Buffalo',
Title: 'Sales Associate',
BirthDate: '1/1/1980',
}
]
$(document).ready(function() {
var grid = $("#grid").kendoGrid({
dataSource: {
data: data,
schema: {
model: {
fields: {
FirstName: { type: "string" },
LastName: { type: "string" },
City: { type: "string" },
Title: { type: "string" },
BirthDate: { type: "date" },
Age: { type: "number" }
}
}
},
pageSize: 10
},
height: 500,
scrollable: true,
sortable: true,
selectable: true,
filterable: true,
pageable: true,
columns: [
{
field: "FirstName",
title: "First Name"
},
{
field: "LastName",
title: "Last Name"
},
{
field: "City"
},
{
field: "Title"
},
{
field: "BirthDate",
title: "Birth Date",
template: '#= kendo.toString(BirthDate,"MM/dd/yyyy") #'
},
{
field: "Age"
}
]
}).data("kendoGrid");
});
Любая помощь очень ценится. Спасибо!