一生美 2023-07-26 15:00 采纳率: 0%
浏览 40
已结题

dhtmlxGantt中,当多个project时间重叠时目前会覆盖掉,如何让一行的多个project换行显示呢

dhtmlxGantt中,数据渲染,当多个project时间重叠时目前会覆盖掉,需要做避让处理,如何让一行的多个project换行显示呢,不要重叠、不要重叠;

img

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-07-26 16:53
    关注
    不知道你这个问题是否已经解决, 如果还没有解决的话:
    • 这篇文章:dhtmlxGantt 甘特图 一行展示多条数据 也许能够解决你的问题,你可以看下
    • 以下回答由chatgpt基于相关博客总结生成:

      我了解到你在使用dhtmlxGantt时遇到了多个project时间重叠的问题,现在我将为你提供一种解决方案。

      为了实现多个project时间重叠时的换行显示, 我们可以使用dhtmlxGantt的hook机制来自定义渲染行的行为。

      以下是一种实现的思路和代码示例:

      1. 首先,我们需要创建一个自定义的函数来处理项目渲染。我们可以使用gantt.templates.task_cell_class来定义这个函数。这个函数会在每个项目单元格渲染前调用。
      gantt.templates.task_cell_class = function(item, date){
        // 获取当前项目的起始时间和结束时间
        var start = item.start_date;
        var end = item.end_date;
      
        // 获取当前单元格的日期
        var cellDate = date.valueOf();
      
        // 检查当前单元格的日期是否在项目的时间范围内
        if(cellDate >= start.valueOf() && cellDate <= end.valueOf()){
          // 如果是,则添加一个自定义的类名,用于样式处理
          return "overlapping";
        }
      
        return "";
      };
      

      在上述代码中,我们定义了一个名为overlapping的类名,并将其应用于日期范围内的单元格。你可以自定义这个类名来适应你的项目样式。

      1. 接下来,我们需要为overlapping类名添加一些自定义样式。你可以在你的CSS文件中添加以下样式:
      .overlapping {
        white-space: normal !important;
        overflow: visible !important;
      }
      

      通过将white-space属性设为normal,我们将允许项目文本在单元格内进行换行。通过将overflow属性设为visible,我们允许项目文本超出单元格的边界。

      1. 最后,我们需要确保在使用dhtmlxGantt.init()初始化gantt之前加载上述代码,以便Hook函数得到正确的应用。

      这样,当你重新加载你的应用程序时,你应该会看到多个project在时间重叠时自动换行显示。

      如果你在实施这些解决方案时遇到问题,请随时问我。


    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 2月20日
  • 创建了问题 7月26日

悬赏问题

  • ¥15 Tradingview两个副图指标叠加后。在不同的时间框架,和不同的产品,数值参数差异。导致可视化效果
  • ¥15 用js遍历数据并对非空元素添加css样式
  • ¥15 使用autodl云训练,希望有直接运行的代码(关键词-数据集)
  • ¥50 python写segy数据出错
  • ¥20 关于线性结构的问题:希望能从头到尾完整地帮我改一下,困扰我很久了
  • ¥30 3D多模态医疗数据集-视觉问答
  • ¥20 设计一个二极管稳压值检测电路
  • ¥15 内网办公电脑进行向日葵
  • ¥15 如何输入双曲线的参数a然后画出双曲线?我输入处理函数加上后就没有用了,不知道怎么回事去掉后双曲线可以画出来
  • ¥50 WPF Lidgren.Network.Core2连接问题