3

我正在使用 Jqgrid 显示一个表,并且我有一个自动增量主键作为表主键。数据按 orderDate 分组,但我不知道如何通过 Jqgrid 访问相同 orderDate 的值。

我用它来查找选定的行

var rowKey = grid.getGridParam("selrow");

它返回一个值,如果数据整洁,我只需添加 1 即可获得所需数据的正确索引,但这些值通常彼此相距甚远。

我可以通过修改 SQL 将表中的数据组合在一起,但表似乎仍然保留 orderDate 作为索引。

有没有一种简单的方法可以选择网格的下一行?或者至少找到它的索引?

谢谢。

4

2 回答 2

3

您可以使用“getInd”方法来查找您正在使用的行的索引,如下所示:

var idx = grid.getInd(rowKey);

您还可以像这样从网格中获取 ID 值数组(按网格显示中的顺序排列):

var dataIDs = grid.getDataIDs();

一起,您可以获得网格中下一行的 id:

var nextID = (dataIDs.length < idx+1) ? dataIDs[idx+1] : dataIDs[0];

(在这里我假设如果你到达列表的末尾,你想回到开头 - 你明白了)

于 2012-05-16T17:35:19.433 回答
0

也许您可以考虑使用 CellSelect(gets rowId) 和 BeforeEditCell(iRow and iCol) 在我的情况下,我将值增加 1 或减少并使用它通过箭头键浏览网格。IRow 和 ICol 是你的行和列索引

但这意味着您不会使用表单进行编辑(我猜),而是像逐个单元格编辑一样

然后在编辑时你可以做 rowEdited[e.AllKeys[0]] = e.AllKeys[0]; 在会话中分配值和存储 ID,然后在服务器按钮“Complete_Click”上保存

或者可能像“clientArray”一样通过 SAVENOW!(仍在尝试)在点击内联保存按钮时保存到saveToDb。只是一个想法:)

于 2012-05-17T18:28:49.080 回答