我使用FullCalendar 2.0来显示用户的可用性。用户可以选择他们可用的时间,然后这些信息将被存储到数据库中。
我已经编辑了fullcalendar.js,在每个月的每一天显示一个复选框,一旦点击保存按钮,所有选中的日子将被存储。
return '' +
'<td class="' + classes.join(' ') + '" data-date="' + date.format() + '">' + '<input type="checkbox" name="cal[]" id="checkbox-2-' + date.format() + '" class="regular-checkbox big-checkbox" value="' + date.format() +'" /><label for="checkbox-2-' + date.format() + '">' + date.date() + '</label>'
+
'</td>';
},
但是,当按下下一个或上一个按钮时,一切都是未检查的。当用户浏览月份时,是否有办法保持复选框处于选中状态?
首先不建议修改fullcalendar.js的内容如果你想改变td的显示方式,你应该使用dayRender方法:
dayRender: function (date, cell) {
cell.append('<input type="checkbox"............../>');
}
要在月份更改后重新定义复选框,您应该使用一个数组来存储每个选中的复选框,然后使用checkbox changed事件从该数组中弹出/推送它们。