2015-08-24 9 views
0

Я работаю над SlickGrid JS-плагином. И я хочу динамически группировать Grid/Table на основе заголовка таблицы. Как я должен передать параметры [getter,formatter, aggregators] динамическиSlickgrid: множественная группировка с динамическими параметрами

без жесткого кодирования, как этого

dataView.setGrouping([ 
    { 
     getter : "department", 
     collapsed : false, 
     formatter : function(g){ 
      return g.value; 
     }, 
     comparer : groupComparer 
    },{ 
     getter : "faculty", 
     collapsed : false, 
     formatter : function(g){ 
      return g.value; 
     }, 
     comparer : groupComparer 
    } 
]); 

Можно ли использовать какие-либо циклические оператор для создания Array параметров

ответ

0

я попробовал много, и нашел это решение

  arr=["department","faculty"];  //Dynamically generated array having titles to group 
      var ar = []; //empty array to push parameters           
      for(i = 0; i < arr.length; i++) 
      {          
       ar[i] = { 
         getter: arr[i], 
         formatter: function (g) {        
           return ": " + g.value + " <span style='color:green'>(" + g.count + " items)</span>"; 
         },  
         aggregators: [ 
          new Slick.Data.Aggregators.Avg("percentComplete"), 
          new Slick.Data.Aggregators.Sum("cost") 
         ], 
         aggregateCollapsed: false, 
         lazyTotalsCalculation: false 
         };      
      }    
      dataView.setGrouping(ar);