mysql - dhtmlx调度程序动态颜色

标签 mysql dhtmlx dhtmlx-scheduler

我正在使用带有时间轴扩展的 DHTMLX Scheduler。

我已将数据连接到 MySQL 数据库,一切正常。 然后,我创建了自定义代码,在“部分”(y 轴值)表下设置 2 种颜色(背景和文本)并将其插入到数据库中。

现在,当加载带有调度程序的页面时,将执行 SQL 查询,该查询会检查每个事件并将颜色值从“section”表复制到“events”表。然后,当调度程序初始化时,在页面的更下方,它还会收集这些值并将其分配给每个事件。

示例:

我将 Room1 和 Room2 作为“部分”。我将 Room1 的背景颜色设置为“蓝色”并将其保存到数据库中。 页面加载时,查询会检查分配给 Room1 的所有事件,并为它们分配相同的背景颜色“蓝色”。

问题:

当我添加新事件时,它会被分配默认背景颜色。

当我移动事件时,它会保留之前的背景颜色。

刷新页面,重新运行脚本,所有颜色都会相应更新。但这并不能解决我的问题,因为它必须手动完成。有没有办法自动执行此操作,在插入/更新后刷新页面?

或者更理想的是,我可以在页面加载时将“部分”颜色存储在变量中,然后在客户端插入/更新事件上相应地分配它们。当页面加载时,它将更新数据库。然而,我再次不确定如何定位这些插入/更新函数。

欢迎任何帮助或建议以获得更好的解决方案,我们将不胜感激。

提前谢谢

最佳答案

我设法得到解决方案:

DHTMLX 内置了漂亮的事件处理程序,可以轻松定位更新/插入功能。请参阅有关 Events 的文档在这里。

因此,使用这些事件触发器,一旦创建/更新事件,它就会执行更新数据库中颜色的 php 脚本。然后,我清除调度程序并重新加载数据,而不刷新页面。

我的代码:

scheduler.attachEvent("onEventChanged", function(id,ev){
$.get('sections/refresh.php', function(dataz) 
{
    function reload()
    {
    scheduler.clearAll();
    scheduler.load("connector.php");
    }
    reload();
});
});

关于mysql - dhtmlx调度程序动态颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23696604/

相关文章:

javascript - 使用 DHTMLX Scheduler,防止将鼠标悬停在事件之外到工具提示时工具提示消失

mysql - 如何优化这个 MySQL 查询? (交叉连接、子查询)

PHP PDO bindParam() 和 MySQL BIT

php - MySQL 总是覆盖现有的数据库条目(UPDATE、REPLACE、INSERT ????)

javascript - 如何增加 dhtmlxgantt 图表的日期

php - dhtmlxGantt 未从数据库加载

javascript - 如何在 DHMTLxTouch 中动态添加组合框中的项目

javascript - 如何在 dhtmlx Scheduler Lightbox 中添加隐藏字段

php - 使用ajax从php多次返回

javascript - Dhtmlx Scheduler 时间线为周末上色