只是想知道为什么JavaScript的刀片推法“指数”剑道数据源追加模式ID上datasoure同步
var agendaBatch=[];
for(var i=0; i<agendas.length; i++) {
var agenda = {
MeetingId: meetingId,
Title: agendas[i].title,
Description: agendas[i].description,
Remarks: "",
};
agendaBatch.push(agenda);
}
console.log(kendo.stringify(agendaBatch));
dataSourceAgenda.add(agendaBatch);
dataSourceAgenda.sync();
输出:
{"0":{"Title":"Agenda title","Description":"Agenda details","Remarks":""},
"1":{"Title":"Agenda title","Description":"Agenda details","Remarks":""}}
我的期望是这样的输出符合我的网页API参数要求
[{"Title":"Agenda title","Description":"Agenda details","Remarks":""},
{"Title":"Agenda title","Description":"Agenda details","Remarks":""}]
任何建议,我怎么能做到这一点?....
更新:刚刚发现刚才,我使用的剑道UI数据源,当我删除了标识上的架构
var dataSourceAgenda = new kendo.data.DataSource({
transport: {
type: "odata",
create: {
type: "POST",
url: API_URL + "/agendas",
contentType: "application/json; charset=utf-8",
dataType: 'json'
},
parameterMap: function (options, operation) {
if (operation !== "read" && options) {
return kendo.stringify(options);
}
}
},
schema: {
model: {
id: "Id", //I get my desired output if this is removed
fields: {
MeetingId: { type: "number" },
Title: { type: "string" },
Description: { type: "string" },
Remarks: { type: "string" },
}
},
}
});
不过,我需要在其他功能Id参数我固定的问题,无论如何,我可以做到这一点,而无需删除剑道数据源中的Id。
更改了问题标题!
看起来更像是一个'kendo.stringify'问题,不能正确序列化数组。 “JSON.stringify”的结果是什么? –