中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

dhtmlxGantt怎么重新排序任務

發布時間:2022-12-02 17:37:19 來源:億速云 閱讀:195 作者:iii 欄目:編程語言

本文小編為大家詳細介紹“dhtmlxGantt怎么重新排序任務”,內容詳細,步驟清晰,細節處理妥當,希望這篇“dhtmlxGantt怎么重新排序任務”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

dhtmlxGantt是用于跨瀏覽器和跨平臺應用程序的功能齊全的Gantt圖表。可滿足項目管理應用程序的所有需求,是最完善的甘特圖圖表庫。它允許你創建動態甘特圖,并以一個方便的圖形化方式可視化項目進度。有了dhtmlxGantt,你可以顯示活動之間的依賴關系,顯示具有完成百分比陰影的當前任務狀態以及組織活動到樹結構。

重新排序任務

dhtmlxGantt提供了兩種在網格中對任務進行重新排序的方法:

  1. 拖放

  2. 排序

這些方法是替代的。默認情況下,兩種模式都是禁用的。
要啟用拖放重排序,請使用order_branch選項:

gantt.config.order_branch = true;
gantt.init("gantt_here");

在整個甘特結構中拖放

該order_branch選項允許同一樹級別中拖動任務。

也可以啟用可以在整個甘特圖中重新排序任務的模式。這意味著一個任務可以替換任何樹級別的另一個任務。要使用這種類型的任務重新排序,請使用order_branch_free選項:

// reordering tasks within the whole gantt
gantt.config.order_branch = true;
gantt.config.order_branch_free = true;
 
gantt.init("gantt_here");

拒絕掉到特定位置

要拒絕將任務放到特定位置,請使用onBeforeTaskMove或onBeforeRowDragEnd事件:

//prevent moving to another sub-branch:
gantt.attachEvent("onBeforeTaskMove", function(id, parent, tindex){
    var task = gantt.getTask(id);
    if(task.parent != parent)
        return false;
    return true;
});
 
//or
gantt.attachEvent("onBeforeRowDragEnd", function(id, parent, tindex){
    var task = gantt.getTask(id);
    if(task.parent != parent)
        return false;
    return true;
});

改善大型數據集的性能

如果您的甘特圖中包含很多任務,則分支重排序的默認模式可能會降低性能。為了加快速度,您可以使用“標記”模式。

gantt.config.order_branch = "marker";

在此模式下,僅將任務名稱重新排序(按住鼠標左鍵),并且僅當將任務放在目標位置時(釋放鍵)才重新渲染甘特圖。與默認模式不同,更改任務位置不涉及觸發onBeforeTaskMove / onAfterTaskMove事件。
為防止任務掉落到特定位置,請改用onBeforeRowDragMove事件(僅在“標記”模式下有效)。

拖放時突出顯示可用放置位置

要在拖動過程中突出顯示可用的目標位置(例如,不可能將根節點拖動到另一個根目錄下,并且您想在視覺上通知用戶此信息),請使用onRowDragStart和onRowDragEnd事件:

gantt.config.order_branch = true;// order tasks only inside a branch
gantt.init("gantt_here");
gantt.parse(demo_tasks);
 
var drag_id = null;
gantt.attachEvent("onRowDragStart", function(id, target, e) {
    drag_id = id;
    return true;
});
gantt.attachEvent("onRowDragEnd", function(id, target) {
    drag_id = null;
    gantt.render();
});
 
gantt.templates.grid_row_class = function(start, end, task){
    if(drag_id && task.id != drag_id){
        if(task.$level != gantt.getTask(drag_id).$level)
            return "cant-drop";
        }
    return "";
};

讀到這里,這篇“dhtmlxGantt怎么重新排序任務”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

凤庆县| 玛曲县| 汝州市| 泗阳县| 临武县| 韩城市| 隆安县| 龙海市| 格尔木市| 桃源县| 长乐市| 西宁市| 临沭县| 丹东市| 昭苏县| 应城市| 甘谷县| 延寿县| 云霄县| 道孚县| 台湾省| 喀喇沁旗| 万州区| 禄丰县| 南漳县| 安多县| 巴林右旗| 巴林左旗| 彩票| 保定市| 特克斯县| 库尔勒市| 靖西县| 枞阳县| 太原市| 锦屏县| 义马市| 宜兰县| 宜章县| 和硕县| 阳东县|