使用手持电话获取行号

Get Row Number with Handsontable

本文关键字:获取 电话      更新时间:2023-09-26

此处为超级noob问题。我有一个行索引数组,我想用它来更改可手持行的颜色。我认为HOT会提供一种方法来检索具有类似hot.getRow(5)的表的tr元素,但它似乎并不存在。

所以简而言之,我正在尝试做这个

var rowIds = []
$.each(rowIds , function (i, element) {
    var row = hot.getRow(i);
    $(row).closest('tr').css('color','green');
});

我发现我可以使用getCell()方法,它接受行和列#以及布尔值,但使用它需要额外的代码来完成一些简单的事情,比如传递一个参数。有没有一种方法我忽略了,或者这是唯一的方法?

以下是HOT的工作原理:它是一个呈现无状态DOM表的JS对象。这意味着您永远不应该尝试手动修改表的HTML。即使你确实想这样做,只要你对这些绿色单元格进行了更改,它们就会被重新渲染,而不是绿色。

相反,您希望使用与每个列或单元关联的易于访问的"自定义渲染器",这取决于您如何定义它们。它们的应用与columnscells定义中的data属性一样。它们是函数,这里有一个例子:

function greenCellRenderer(instance, td, row, col, prop, value, cellProperties) {
    Handsontable.renderers.TextRenderer.apply(this, arguments);
    td.style.color = 'green';
}

你应该阅读完整的文档来了解渲染器的全部功能,但从争论中可以清楚地看出,你可以做什么。你可以做的一件事是应用你希望的绿色。当然,要有选择地执行此操作,您可以将渲染器应用于特定的单元格,也可以使用rowcol参数在该通用渲染器中设置条件。

希望能有所帮助!