错误 - 我们的 JSON 格式不正确。完整日历不会显示活动

Error - Our JSON is formatted incorrectly. Events won't show for Full Calendar

我们如何格式化我们的 API Json 就像下面的第一段代码一样?我们需要把它放在数组、字符串、对象中吗?我们的问题是 Full Calendar 可以从第一段代码中获取事件,但不能从我们的第二段代码中获取事件。

http://www.json-generator.com/api/json/get/ccUKVDYErS?indent=2

[
  {
"start": "2014-08-01", 
"title": "All Day Event"
 }, 
{
"start": "2014-01-07", 
"end": "2014-08-10", 
"title": "Long Event"
}, 
{
"start": "2014-08-09T16:00:00", 
"id": 999, 
"title": "Repeating Event"
}, 
{
"start": "2014-08-16T16:00:00", 
"id": 999, 
"title": "Repeating Event"
}, 
{
"start": "2014-08-12T10:30:00", 
"end": "2014-08-12T12:30:00", 
"title": "Meeting"
 }, 
 {
"start": "2014-08-22T12:00:00", 
"title": "Lunch"
}, 
{
"start": "2014-08-13T07:00:00", 
"title": "Birthday Party"
}, 
{
"url": "http://google.com/", 
"start": "2014-08-28", 
"title": "Click for Google"
}
 ]

我们的 API 目前看起来像这样(一切都是字符串),

[{"start":"2016-04-12","end":"2016-04-12","title":"Calendar 1","id":"a41380d1fbbaa819"}]

谈论您的 API 您是在说“(一切都是字符串)”。

要将字符串转换为 JSON 使用 JSON.parse() docs

var validJSON =  JSON.parse('[{"start":"2016-04-12","end":"2016-04-12","title":"Calendar 1","id":"a41380d1fbbaa819"}]');

将 return:

[{
    "start": "2016-04-12",
    "end": "2016-04-12",
    "title": "Calendar 1",
    "id": "a41380d1fbbaa819"
}]

试试这个它会起作用:

根据你的问题。

//JSON Text
var obj = '[{"start":"2016-04-12","end":"2016-04-12","title":"Calendar 1","id":"a41380d1fbbaa819"}]';

//Convert JSON String in JSON Object
console.log(JSON.parse(obj));

输出:

根据您的要求:

您必须在 url 中传递这些值,并根据这些值进行 AJAX 调用以获取 JSON。

var start='2016-04-12';
var end='2016-04-12';
var title='Calendar 1';
var id='var start='2016-04-12';';
$.ajax({
type: "POST",
dataType: "json",
url: "data.php", //Relative or absolute path to chat.php file
data: 'start='+start+'&end='+end+'&title='+title+'&id='+id,
success: function(data) {
alert(data); // JSON From the URL
}
});
return false;
}

现在您必须使用服务器端语言(PHP,Java) 根据这些值创建 JSON。

工作 Fiddle:https://jsfiddle.net/pr2daL7r/