2016-08-24 70 views
0

我正在使用FullCalender來顯示日曆並使用戶能夠在日曆中創建事件,並且可以從下拉列表中選擇動態持續時間。在創建活動時選擇時間時禁用拖動功能

當用戶只在日曆上點擊時,我會得到所需的結果,只有所需的持續時間被選中。哪個是對的。

但問題是,當用戶點擊並繼續拖動來選擇時間範圍。我不希望用戶能夠選擇超過指定的持續時間,即5分鐘。只有點擊選擇5分鐘,這是完全正常工作。只有在使用CLICKing進行DRAGing時纔會出現問題。

我已經嘗試過FullCalendar文檔中提供的各種選項,但沒有任何幫助。

任何幫助表示讚賞。提前致謝。

當前整合是在下面的鏈接小提琴

https://jsfiddle.net/4h28Lt81/

jQuery是如下:

$('#calendar').fullCalendar({ 
    header: { 
    left: 'prev,next today', 
    center: 'title', 
    right: 'month,agendaWeek,agendaDay' 
    }, 
    defaultView: 'agendaDay', 
    slotDuration: '00:05:00', 
    slotEventOverlap: false, 
    defaultDate: '2016-06-12', 
    selectable: true, 
    selectHelper: true, 
    select: function(start, end) { 
    var title = prompt('Event Title:'); 
    var eventData; 
    if (title) { 
     eventData = { 
     title: title, 
     start: start, 
     end: end 
     }; 
     $('#calendar').fullCalendar('renderEvent', eventData, true); 
    } 
    $('#calendar').fullCalendar('unselect'); 
    }, 
    editable: true, 
    eventLimit: true, // allow "more" link when too many events    
    loading: function(bool) { 
    $('#loading').toggle(bool); 
    }, 
    eventRender: function(event, el) { 
    // render the timezone offset below the event title 
    if (event.start.hasZone()) { 
     el.find('.fc-title').after(
     $('<div class="tzo"/>').text(event.start.format('Z')) 
    ); 
    } 
    }, 
    eventClick: function(calEvent, jsEvent, view) {} 
}); 

回答

1

我覺得能夠單擊並拖動你有多少時間渴求事件不是問題。那是除非我在你的問題中丟失了某些東西。假設用戶只需要關閉5分鐘的段?

如果你真的想阻止它拖動,就可以通過jQueryUI的

myObject.draggable('disable') 

希望這有助於禁用它!

+0

謝謝@Turk。得到它的工作。您的回答幫助我找到了解決方案。 – Sanchit