为什么JSON.stringfy($('#calendar').fullcalendar('cl
Why JSON.stringify($('#calendar').fullcalendar('clientEvents')) fails?
作为标题,当我尝试这样做时:
myString = JSON.stringify($('#calendar').fullcalendar('clientEvents'));
它失败了。我试图提醒myString
,但我看到了一系列的[Object object], ... .
。例如,如果我尝试提醒myArray[0].title
,它会正确返回。
我哪里做错了?
附言:目标是通过AJAX获得一个字符串保存在文件中。
您的结果告诉您,fullCalendar
clientEvents
方法提供的数组中的对象无法直接转换为JSON。我在http://fullcalendar.io页面(我在尝试转换圆形结构时出错);我认为这是由于您使用的FullCalendar版本与他们使用的版本的差异,或者您的浏览器和我的浏览器处理循环结构的方式的差异。不管怎样,这些物体显然不能按原样使用。
目标是通过AJAX获得一个字符串保存在文件中。
您可以通过在数组上使用map
来获得可以成功转换为JSON的对象,将您想要的属性白名单(或将不想要的属性黑名单)。
下面是一个白名单列出start
、end
和title
属性的示例:
var json = JSON.stringify($("#calendar").fullCalendar("clientEvents").map(function(e) {
return {
start: e.start,
end: e.end,
title: e.title
};
}));
这里有一个黑名单source
和任何以_
开头的属性:
var json = JSON.stringify($("#calendar").fullCalendar("clientEvents").map(function(e) {
var rv = {};
Object.keys(e)
.filter(function(k) {
return k != "source" && !k.startsWith("_");
})
.forEach(function(k) {
rv[k] = e[k];
});
return rv;
}));
在他们的网站上为我工作。
以下是两者的ES2015版本:
白名单:
let json = JSON.stringify($("#calendar").fullCalendar("clientEvents").map(e => ({
start: e.start,
end: e.end,
title: e.title
})));
黑名单:
let json = JSON.stringify($("#calendar").fullCalendar("clientEvents").map(e => {
let rv = {};
Object.keys(e)
.filter(k => k != "source" && !k.startsWith("_"))
.forEach(k => {
rv[k] = e[k];
});
return rv;
}));
相关文章:
- 为Fullcalendar中的特定时段设置不同的颜色
- FullCalendar:事件发生时阻止重叠.标题是一样的
- JQuery FullCalendar在从ajax成功调用rerenderEvents时遇到问题
- 拖动&删除Fullcalendar.io资源-更新视图
- 我可以在FullCalendar中设置事件ClickLimit弹出窗口的样式吗
- TypeError:t(..).on不是fullcalendar上的函数
- 如何在点击超链接时调用fullcalendar回调
- fullcalendar在删除导致浏览器挂起的多个事件时速度较慢
- 如何从ASP.NET并将其发送到jQuery?(实现FullCalendar)
- "TypeError:t.start未定义”;,在fullcalendar.min.js中,同时在我的网站上使
- 可以'如果我隐藏某些日期,则不要在FullCalendar中拖动事件
- FullCalendar backend PHP/JS to symfony 3
- 无法将事件重新呈现为fullCalendar
- 如何将事件的日期放入fullcalendar中的日期对象中
- Undefined不是Fullcalendar js上的函数
- ASP.NET MVC5 jQuery FullCalendar获取事件问题
- 如何将自定义参数传递到FullCalendar事件提要
- fullcalendar后台事件:允许删除
- FullCalendar的时区工作不正常
- 为什么JSON.stringfy($('#calendar').fullcalendar('cl