一貫性のない API から返される json があります。つまり、一部のレコードには「年齢」が関連付けられていますが、他のレコードには関連付けられていません。
データを表示/操作するために Kendo UI Grid を設定しようとしています。残念ながら、「年齢」が関連付けられていないレコードが関連付けられているレコードで返されると、剣道は次のエラーで失敗します: Uncaught ReferenceError: Age is not defined
作業グリッドの例を次に示します: http://jsfiddle.net/tmort/CVkpF/
そして、「Age」なしで返される 1 つのレコードを含むグリッドを次に示します: 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");
});
どんな助けでも大歓迎です。ありがとう!