2017-09-15 59 views
2

我有一個用戶有興趣能夠複製和粘貼kendo計劃程序的日期標題。通過單擊並拖動來選擇kendo計劃程序中的日期標題

在調度設置,我構建了天視圖下這樣的看法選項:

{ 
         type: "day", 
         startTime: new Date(1901, 1, 1, 0, 0, 0), 
         endTime: new Date(1901, 1, 1, 23, 59, 59), 
         workDayStart: new Date(startWorkDayStr), 
         workDayEnd: new Date(endWorkDayStr), 
         dateHeaderTemplate: kendo.template('<strong>#=kendo.toString(date, "ddd, MMM dd")#</strong>'), 
         selected: selectDay 
        }, 

然後我得到一個日期頭就像一個的圖片。但是,您不能單擊並拖動以突出顯示它並將其複製到其他位置。

Here is a dojo

這也給不能夠突出在日視圖日期標題的一個非常基本的例子。

我想知道是否有人知道可能允許這些日期標題是'可選'的方式,以便用戶可以點擊並拖動並突出顯示它們以進行復制。

enter image description here

+0

什麼是你的道場鏈接是圖像鏈接。 – DontVoteMeDown

+0

OH對不起,應該修復 –

+0

這是一個有趣的問題。我用['user-select'](https://developer.mozilla.org/en-US/docs/Web/CSS/user-select)嘗試了它並刪除了'onselectstart',但都沒有成功。 – DontVoteMeDown

回答

0

所以,我得到的最接近的是利用這個代碼:

​​

這是改編自這個答案,我發現:https://stackoverflow.com/a/34748190/7376331

這將選擇全日標題文本點擊時,並且再次點擊時取消選擇,或點擊另一個日期標題。與kendo調度程序一起使用這個問題的唯一問題是,當您導航到新的日期範圍或更改視圖時,最初綁定click事件的日期標題已消失,並且新的日期標題佔據了自己的位置。

爲了解決這個問題,我必須在我的dataBinding事件中添加上面的代碼,在爲當前選定的視圖/日期範圍收集新事件並調用scheduler.dataSource.read()來更新我的調度程序視圖。在調用read()之後,我已經運行了上面的代碼,突出顯示了單擊時的日期文本,無論我在哪裏導航或更改了哪些視圖。

此外,一個重要的注意事項是我加的selectableText和可待選班我所有的dateHeaderTemplates在我的意見,像這樣:

dateHeaderTemplate: kendo.template('<strong class="selectableText can-be-selected">#=kendo.toString(date, "ddd M/dd")#</strong>') 

我不知道,如果有太多的這是一個更好的解決方案,因爲它很可能是一個非常罕見的功能,並且使用kendo調度器使其更加困難(例如必須在調度程序的事件流中找到合適的位置來重新綁定日期的點擊事件頭)。

相關問題