jquery gantt 的使用

 1、引入css與js文件

  <link rel=”stylesheet” href=”css/style.css” />  

  <script src=”js/jquery-1.7.min.js”></script>
  <script src=”js/jquery.fn.gantt.js” charset =”GB2312″></script>
  <script src=”js/jquery.cookie.js”></script>
 
2、html
  <div class=”gantt”></div>
 
3、數據對象

var demoSource = [
{
  name: “aaa”,
  desc: “aaa”,
  values: [
  {from: ‘2021-01-19’,to: ‘2021-01-19’,desc:”a1 2021-01-19″,label:”a1″,dataObj:{“id”:”001″,”code”:”a01″}},
  {from: ‘2021-02-19’,to: ‘2021-02-19’,desc:”a2 2021-02-19″,label:”a2″,dataObj:{“id”:”002″,”code”:”a02″}},
  {from: ‘2021-04-19’,to: ‘2021-04-19’,desc:”a3 2021-04-19″,label:”a3″,dataObj:{“id”:”003″,”code”:”a03″}}
  ]
}]

其中name指的是左側第一列的內容,desc指的是左側第二列的內容。

values指的是右側顯示的內容:

  其中from表示開始時間,to表示結束時間,desc表示滑鼠放在數據條上所顯示的內容。label甘特圖項目的標題文字。

  dataObj表示其他自定義的內容,這可以是任意的數據類型, 例如,我這裡是一個對象,可以使用這個dataObj做一個自定義的點擊事件。

4、甘特圖基本配置
$(".gantt").gantt({
     source: data,
     navigate: 'scroll',//// 底部使用拖拽的刻度尺還是按鈕:scroll和buttons
     scale: "weeks",// 這裡是設置默認比例。這裡總共有四個參數:months  weeks days  hours.
     maxScale: "months", // 這裡是設置最大比例。這裡總共有四個參數:months  weeks days  hours.
     minScale: "days", // 這裡是設置最小比例。這裡總共有四個參數:months  weeks days  hours.
     itemsPerPage: 10, //設置甘特圖每頁顯示多少條
     onItemClick: function (data) {//有數據範圍內的點擊事件
         console.log(data);   // 這裡輸出的就是所點擊數據的dataObj   001  a01            
     },
     onAddClick: function (dt, rowId) {//無數據範圍內的點擊事件
     },
 });
 其中,點擊事件onItemClick,其參數data,就是上述數據對象中的dataObj