如何取消fullCalendar中的旧选择?

如何取消fullCalendar中的旧选择?,fullcalendar,Fullcalendar,我使用jqueryfullcalendarhttp://arshaw.com/fullcalendar/docs/selection/unselectAuto/ 我使用此日历的可选版本http://arshaw.com/js/fullcalendar/demos/selectable.html 工作正常,但是如果我继续选择新日期,我想取消/删除我的旧选择 假设我选择了1月1日,并给了它一个标题。 当我尝试选择1月2日时,我只希望看到1月2日的选择。 我以为取消选择自动是为了这个,但我无法使它工作

我使用jqueryfullcalendarhttp://arshaw.com/fullcalendar/docs/selection/unselectAuto/

我使用此日历的可选版本http://arshaw.com/js/fullcalendar/demos/selectable.html

工作正常,但是如果我继续选择新日期,我想取消/删除我的旧选择

假设我选择了1月1日,并给了它一个标题。 当我尝试选择1月2日时,我只希望看到1月2日的选择。 我以为取消选择自动是为了这个,但我无法使它工作:

有什么想法吗

我就在下面用了未选自动 是的,
unselectAuto:true,

我的unselectAuto也有问题。有时它会在我不想要的时候取消选择,有时它也不会在我想要的时候取消选择。我的解决方案是手动触发unselect方法

以下是如何取消选择当前选定的所有项目:

$('#yourCalendar').fullCalendar('unselect');
您可以将这行代码放在自定义jQuery事件中,这些事件绑定在插件之外。您还可以将其包括在fullCalendar回调中,等等

希望这有帮助


斯科特

你可以试试这个方法,这对我很有用:

 var liveDate = new Date(); // current Date
 var calendar = $('#calendar').fullCalendar({
         select: function (startDate, endDate) {
                    if (liveDate > startDate) {
                      alert('Selected date has been passed');
                      return false;
                  } else {
                           //do your wish
                  }
         calendar.fullCalendar('unselect');
    }
});

首先,仍然需要使用$yourCalendar.fullCalendar'unselect';功能

我需要做的第二件事是指定在设置fullcalendar选项时取消选择回调的行为。对我来说,我必须从我的表格中解开提交按钮

unselect: function(){
    $('#submitButton').unbind();
},
它工作得很好

我在读了这篇文章后得出了这个结论

使用这个代码

 $('#trainings_modal').on('hidden', function () {
        $('#trainings_modal *').unbind(); // Unbind all events
 });

使用任何方法解除隐藏表单的绑定,如按esc键或按out键,都有相同的问题,但我的用户直接与日历交互,并且生成了多个事件。也就是说,没有通过一个带有按钮的表单,因此没有像以前的许多解决方案那样需要解除绑定

为了只允许一次选择并清除以前的提交,我更改了选择功能,如下所示:

select: function(start, end) {
   var title = "Desired Booking";
   var eventData;
   eventData = {
       title: title,
       start: start,
       end: end
   };
 $('#calendar').fullCalendar('renderEvent', eventData, true);                                                },

这对我来说很有帮助。

选择是指通过单击日历创建新事件的部分吗?是的,在日历上创建新事件。但是如果我允许用户在每次单击时创建一个新事件,它会变得非常拥挤。我希望通过删除上一个选择来避免这样的情况:在呈现日历上的每个选择时,如果用户选择另一个daterenders new,我希望删除上一个呈现event@wallace740有没有找到解决这个问题的办法。我试过日历。fullCalendar'unselect';和unselectAuto:true,但它不会取消选择事件。@JuanGonzales我已经8-9个月没有访问fullCalendar网站了,可能有一个新功能可用,我不确定。上次尝试时,事件呈现后,在调用另一个timeselect:functionstart、end、allDay{……calendar.fullCalendar'unselect';}页面之前,无法删除该事件。是否有方法删除呈现的事件?每次我选择一个事件时,它会自动呈现是否单击页面上的其他位置会导致清除当前选择。我不能让这项工作,而不是点击其他地方,我试图点击日历上的另一个地方谢谢保罗!这对我来说是个好办法。花了几个小时试着这么做非常感谢!非常有帮助!
select: function(start, end) {
   $('#calendar').fullCalendar('removeEvents');
   $('#calendar').fullCalendar('rerenderEvents')
   var title = "Desired Booking";
   var eventData;
   eventData = {
       title: title,
       start: start,
       end: end
   };
 $('#calendar').fullCalendar('renderEvent', eventData, true);                                                },