0

我有一个 kendoGrid 显示具有 200 行和 50 列的数据源。有垂直和水平滚动条,这是需要的。

如何使网格滚动查看特定的列、行或行&列?

两个用例是:

  1. 从菜单中选择列名 Z,跳转到 Z 列(将其滚动到视图中)
  2. 数据源为 FOO 的网格会滚动,直到 X 列位于视图中的最左侧。然后将网格替换为数据源为 BAR 的新网格。如果 BAR 包含 X 列,那么我想将其滚动到视图中。

谢谢,理查德

4

1 回答 1

1

您需要做的第一件事是找到单元格的位置。如果您知道行号和列号,您可以执行以下操作:

var col = 30;
var row = 100;
var pos = $("tr:nth(" + (row - 1) + ")", grid.tbody).find("td:nth(" + (col - 1) + ")").position();

然后你必须滚动,你可以直接使用:

$(grid.tbody).closest(".k-grid-content").scrollTop(pos.top).scrollLeft(pos.left);

或者animate它使用:

$(grid.tbody).closest(".k-grid-content").animate({
    scrollTop : pos.top,
    scrollLeft: pos.left
}, 2000);
于 2013-04-03T15:58:40.727 回答