强制冻结列行以手动调整大小

时间:2015-09-28 10:09:43

标签: javascript 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 />");

1 个答案:

答案 0 :(得分:1)

您的问题是,您绝不应手动更改Handsontable为您呈现的表格上的内容或CSS。它是一个无状态表,只要您进行任何触发更改事件的更改,它就会被覆盖。阅读此答案以获得更详细的说明:

CSS applied on Handsontable grid row on Scroll is not working properly

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