【问题标题】:Slickgrid Display Object in Single Column not RowSlickgrid 在单列而不是行中显示对象
【发布时间】:2014-06-13 15:49:05
【问题描述】:

我试图弄清楚如何使用 slickgrid 将我的对象显示在单列而不是单行中。下面是一个例子。想法?

网格数据如下所示

[{ fname: 'john', lname:'doe'}, {fname:'kyle', lname:'noobie'}]

这就是我使用 slickgrid(行对象视图)得到的结果

desc    | fname | lanme
option1 | john  | doe
option2 | kyle  | noobie

这就是我想要的(列对象视图)

desc  | option1 | option2
fname | john    | kyle
lname | doe     | noobie

【问题讨论】:

    标签: row pivot slickgrid


    【解决方案1】:

    所以我想通了,它并不漂亮。基本上我必须将数据旋转到一个新的行对象中,然后将其取消旋转以保存它。它不是真的那么漂亮,但它完成了工作。疯狂的是,现在您必须为每个列创建一个编辑器和格式化程序并将其应用到每个列。编辑器/格式化程序查看字段名称并执行 switch 语句以确定它应该是什么样子。玩得开心。我做到了。 :)

    function getPivotedRows(origData) {
    //this is a mapping between the column headings and the properties
    var properties = [{ 'First Name': 'fname' }, { 'Last Name': 'lname' }];
    
    //this holds my pivoted rows
    var rows = [];
      for (var i = 0; i < properties.length; i++) {
        var row = {};
        for (var j = 0; j < origData.length; j++) {
            var key = "";
            for (var p in properties[i]) {
                row['Description'] = p; //set the column
                key = properties[i][p];
            }
            row['options' + (j + 1)] = origData[j][key];
        }
        row[gridOptions.uniqueKey] = i;
        rows.push(row);
      }
      return rows;
    }
    

    【讨论】:

      猜你喜欢
      • 2014-10-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-27
      相关资源
      最近更新 更多