使用 handsontable 强制冻结列行调整大小

Force frozen column row to resize with handsontable

我有一些 javascript 可以更改可操作网格中某些单元格的内容。

我发现的问题是,当我更改其中一个单元格的内容时,冻结的列行不会相应更改。

有没有函数可以运行检查每一行的大小并相应地调整大小?

我有一个显示问题的 Jsfiddle:

http://jsfiddle.net/JammyDodger231/145bL7ej/

var myData = Handsontable.helper.createSpreadsheetData(4, 20);

hot = new Handsontable(container, {
    data: myData,
    rowHeaders: true,
    colHeaders: true,
    fixedRowsTop: 2,
    fixedColumnsLeft: 2
});

//Hardcoded just to show issue, this isnt where the content would be changed
$('.htCore tbody tr:nth-child(2) td:nth-child(5)').html("Test <br /><br />");

你的问题是你永远不应该手动更改内容或 CSS 在 Handsontable 为你呈现的 table 上。它是一个无状态的 table,一旦您进行任何触发更改事件的更改,它就会被覆盖。阅读此答案以获得更详细的描述:

您应该做的是使用 Handsontable 提供给您的方法。在您的情况下,您可以使用 hot.setDataAtCell(row, col, value)。您也可以直接更改 myData,因为 Handson 使用了对它的引用。除了手动更改 DOM.