2016-11-30 25 views

回答

1

您可能希望將事件與調度程序的k事件類相關聯。

$("#scheduler").on("dblclick", '.k-event', function (e) { 
    var scheduler = $("#scheduler").getKendoScheduler(); 
    var element = $(e.target).is(".k-event") ? $(e.target) : $(e.target).closest(".k-event"); 

    var event = scheduler.occurrenceByUid(element.data("uid")); 
    alert("Start Date : " + event.start + ", End Date: " + event.end); 
}); 

Demo Link

+0

我已經看到過這個。我需要的全部是 $(「#scheduler」)。on(「dblclick」,function(e){ //在此做某事 }); 我仍然把你的標記爲正確答案,謝謝! – oopsdazie

2

您可以在調度選項像這樣添加一個事件處理程序add事件的調度:

add: (e) => { 
    // Place your code here. 
    e.preventDefault(); 
} 

或者如果你寧願不使用箭頭功能:

add: function(e) { 
    // Place your code here. 
    e.preventDefault(); 
} 

調用e.preventDefault()將禁用顯示彈出窗口的內置「添加」事件處理。你提到你已經禁用了它,但如果你以另一種方式做到這一點,這是一個很好的方法。

e將包含插槽的開始和結束時間以及資源詳細信息,如果您使用資源。

0

試試這個對我有用。

edit: function (e) { 
       e.preventDefault(); //prevent popup editing 
       var dataSource = this.dataSource; 
       var event = e.event; 
       if (event.isNew()) { 
        setTimeout(function() { 
         //dataSource.add(event); 
         editEvent(event); // your own function to call 
        }); 
       } 
       else { 

       } 
      } 
+0

他希望函數在雙擊單元時運行,而不是事件。這就是爲什麼'add:'事件是正確的選擇:) – Shai

+0

@Shai謝謝。 –