我在完成配置FullCalendar和与数据库通信时遇到了一些问题。
在stackoverflow和其他地方阅读了大量的文档和帖子之后,我仍然遇到了我的主题标题中提到的问题。
我在Apache Tomcat上使用JAVA Web应用程序处理项目并成功配置了FullCalendar。
1。如何获取自定义变量appid以制作ajax $ .post()
在使用以下方法加载.JSP页面之前,我确实使用以下绑定对我的一个视图提供了带有值的日历。
//More Code
events: ${appointments}
//More Code
数据样本:
[
{"title":"10","start":"2017-07-05T13:30:00","backgroundColor":"#009900"},{"title":"11","start":"2017-07-05T12:00:00","backgroundColor":"#009900"}
]
2。完整日历无法获取JSON
其次,在我的另一个观点中,通过ajax帖子,我从SQLServer检索我的事件。我以与上一个问题相同的方式格式化JSON,并使用以下方法通过doPost响应:
response.setContentType("application/json"); // Set content type of the response so that jQuery knows what it can expect.
response.setCharacterEncoding("UTF-8"); // You want world domination, huh?
response.getWriter().write(json);
当我遇到FullCalendar的缺点时尝试通过数据变量输入日历时,“当我将数据手动粘贴到events.push()
但不能自动粘贴时,我可以提供数据。
我读到了关于括号的这个问题。我已经检查了所有的东西超过半天,但没有看到成功。尽管在某些时候我设法只使用数据变量来提供日历,只要它包含一个事件。当我试图在保持正确格式的同时添加更多内容时,我反对出现问题(JSON保持与问题1相同的格式,根据我读过的帖子,这是正确的格式)
这是我对Servlet的Ajax Post请求:
$.post("/AppointmentServlet",
{
selecteddoctorid: selectedDoctorID //This is relevant to my 1st question
},
function (data, status) {
var events = [];
//events.push(data);
$('#calendar').fullCalendar('removeEventSource', events);
$('#calendar').fullCalendar('addEventSource', events);
$('#calendar').fullCalendar('refetchEvents');
}).change();
3.在eventClick函数外部更新/删除事件失败
最后,在对数据库进行了一些更改后,我想更改已更改事件的一些属性,例如颜色。
当我尝试通过日历的eventClick
功能更新事件时,一切正常并且事件已更新但是当我尝试更新ajax帖子的成功函数时,尽管我尝试过但我看到没有变化以下内容:
function doSubmit() {
$("#calendarModal").modal('hide');
var title = $('#title').val();
var eventId = $('#eventID').val();
alert(eventId);
var startTime = $('#startTime').val();
$.post("/AppointmentServlet",
{
appointmentid: appid
},
function (data, status) {
alert(data);
$('#calendar').fullCalendar('updateEvent', eventid);
}).change();
}
当我尝试使用以下代码删除事件时,我也遇到了同样的问题:
//This is part of an ajax post
function (data, status) {
$('#calendar').fullCalendar('removeEvents', eventID);
});