这是我的javascript代码中使用fullcalendar:的部分
<script type="text/javascript">
$(document).ready(function () {
$('.i-checks').iCheck({
checkboxClass: 'icheckbox_square-green',
radioClass: 'iradio_square-green',
});
$('#calendar').fullCalendar({
header: {
left: 'prev,next today',
center: 'title',
right: 'month,agendaWeek,agendaDay'
},
weekNumbers: true,
eventLimit: true,
editable: true,
events: '/Service/GetEventSources/',
eventDrop: function (event, delta, revertFunc, jsEvent, ui, view) {
$.ajax({
url: '/Service/ChangeEvent/',
dataType: 'POST',
data: {
id: event.id,
start: event.start,
end: event.end
},
});
},
});
});
</script>
这是C#部分,我想在ASP.NET MVC中进行数据库更新Web应用程序:
[HttpPost]
public JsonResult ChangeEvent(int id, DateTime start, DateTime end)
{
return Json(new
{
id =id,
start = start.ToString("s"),
end = end.ToString("s")
}, JsonRequestBehavior.AllowGet);
}
我在我的C#Web应用程序中使用这个捆绑包配置:
// fullCalendar styles
bundles.Add(new StyleBundle("~/plugins/fullCalendarStyles").Include(
"~/Content/plugins/fullcalendar/fullcalendar.css"));
// fullCalendar
bundles.Add(new ScriptBundle("~/plugins/fullCalendar").Include(
"~/Scripts/plugins/fullcalendar/moment.min.js",
"~/Scripts/plugins/fullcalendar/fullcalendar.js",
"~/Scripts/plugins/fullcalendar/lang/de.js"));
我今天(2016年4月8日)下载了这些文件,所以它们是最新的。
从未调用"Service"控制器中的post函数"ChangeEvent",而是我收到以下错误(来自Chrome调试模式):谷歌调试视图
有人知道吗,这里出了什么问题?
我自己回答这个问题!问题出在javascript部分。事件的开始和结束属性必须与format()一起使用。现在一切正常:
eventDrop: function (event, delta, revertFunc, jsEvent, ui, view) {
$.ajax({
url: '/Service/ChangeEvent/',
dataType: 'POST',
data: {
id: event.id,
start: event.start.format(),
end: event.end.format()
},
});
},