2016-10-11 7 views
0

Ich habe eine Tabelle mit AG-Grid. Ich möchte die Zeilenhöhe entsprechend dem Text in der Zelle anpassen. In der Dokumentation https://www.ag-grid.com/javascript-grid-row-height/index.php wurde es für spezifische Spalte angegeben. Aber in meinem Fall kann jede Spalte mehr Text haben. So, wie Sie die Zeilenhöhe entsprechend der größten Textgröße in jeder Spalte anpassen.Wie kann die Zeilenhöhe mit Ag-Grid dynamisch erhöht werden?

$scope.gridOptions = { 
      angularCompileRows: true, 
      enableColResize: true, 
      enableSorting: true, 
      enableFilter: true, 
      groupHeaders: true, 
      suppressCellSelection: true, 
      columnDefs: cols, 
      rowData: statusPageObj.rows, 
      onGridReady: opmGridReady, 
      angularCompileRows: true, 
      headerHeight: 45, 
      /*rowHeight: 50,*/ 
      getRowHeight: function(params) { 
       return 50; 
      } 

     }; 
+0

Kommentare dazu? – Keshav1007

+0

Sie können 'params.data' innerhalb der Funktion' getRowHeight' verwenden. Dies sind die Daten, die Sie anfänglich dem Grid zur Verfügung stellen. Dann müssten Sie nur alle Zeilen und dann alle Zellen durchlaufen, um herauszufinden, welche die größte Textlänge hat. –

+0

@JarodMoser, die das Leistungsproblem verursachen könnte? weil ich wahrscheinlich eine sehr große JSON – Keshav1007

Antwort

0

Schritt: 1 HTML-Code

<button onclick="setrowHeight(50)">50px</button> 

Schritt: 2 js Code

var rowHeight = 25; 

function setrowHeight(height) { 
    rowHeight = height; 
    gridOptions.api.resetRowHeights(); 
} 

diese Uhr: https://embed.plnkr.co/FEK7wtQfVwUXeYjOh6PK/

0

Sie können die Höhe der Zeile anhand der Textlänge bestimmen.

gridOptions.getRowHeight = function() { 
    return 18 * (Math.floor(params.data.myDataField.length/45) + 1); 
} 
Verwandte Themen