Obtendo dados de células em slickgrid
-
25-09-2019 - |
Pergunta
Que método eu uso para o SlickGrid para obter o conteúdo da célula? Por exemplo:
...
grid = new Slick.Grid($("#myGrid"), data, columns, options);
grid.onAddNewRow = function(item,colDef) {
grid.removeRow(data.length);
data.push(item);
grid.updateRowCount();
grid.render();
}
grid.onCurrentCellChanged = function(args){
// get cell content!
};
...
Desde já, obrigado!
Solução
A grade está modificando diretamente sua fonte de dados, para que as alterações sejam aplicadas a "dados". O evento "OnCurrentCellChanged" é disparado quando o usuário altera a célula ativa/selecionada e recebe {linha: currentRow, célula: currentCell} como um parâmetro. Para chegar aos dados da célula, você pode usar data[args.row][grid.getColumns()[args.cell].field]
, supondo que você esteja usando o Column.field para acessar os dados e não um formatador personalizado que obtém os dados de outra maneira.
Outras dicas
grid.onCurrentCellChanged
parece ter mudado para grid.onActiveCellChanged.subscribe
em 2.0
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow