【发布时间】:2019-01-03 06:20:12
【问题描述】:
我想添加一些功能,当您选择一个活动选项时,它会在日历下方呈现一个列表。我使用了选择选项,当它更改值时,它将填充一个列表。我正在使用 jQuery 和 JSON 文件,这是代码,但它返回错误。
JSON format example: {
"title": "",
"start": "",
"tags": "",
"imageurl": "",
"products": [
{
"name": "",
"url": "",
"time": "",
"location": ""
}
]
}
VM66:1 Uncaught SyntaxError: 位置 1 处 JSON 中的意外标记 o 在 JSON.parse() 在 Object.success (eventcalendarjson.html:610) 在 n (jquery.min.js:2) 在 Object.fireWith [as resolveWith] (jquery.min.js:2) 在 w (jquery.min.js:4) 在 XMLHttpRequest.d (jquery.min.js:4)
$("#search").change(function () {
$("html, body").animate({ scrollTop: $(".calendar").offset().top }, 1500);
var selectedEvent = $("#search").val();
$.getJSON('events.json', function (data) {
var ourData = JSON.parse(data);
render(selectedEvent, ourData);
});
});
function render(selectedEvent, data) {
$(".order-details-table").empty();
$(data).each(function (i, v) {
if (selectedEvent == 'all' || v.tags == selectedEvent) {
if (v.products)
$(v.products).each(function (index, p) {
$(".order-details-table").append('<tr><td class="o-box-name"><a name="detailsevent">' + p.name + '</a></td><td class="o-box-name">' + v.title + '<br><small>' + p.time + '</small><small> ' + p.location + '</small></td><td><a href="' + p.url + '" class="cancel-del-text" target=_"blank">Register!</a></td></tr>');
});
}
});
}
【问题讨论】:
-
不需要解析数据,直接使用render(selectedEvent, data);
-
是的 - 当您尝试双重解析返回的数据时,我相信意外的“o”来自
[object object]。