2017-09-15 35 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调度器使其更加困难(例如必须在调度程序的事件流中找到合适的位置来重新绑定日期的点击事件头)。

相关问题