使用默认值在 ag 网格上添加行
Posted
技术标签:
【中文标题】使用默认值在 ag 网格上添加行【英文标题】:Add row on ag grid with default value 【发布时间】:2019-07-28 12:30:10 【问题描述】:我想在 ag 网格中添加一个新行,其中一列具有默认值。我的目标是使这个自动生成的值比列中的最大数多 1。 (这是假设列中的数字将严格连续加一。)
我查看了ag grid 'Updating Data' 页面,但这里的问题是假设您单击“添加行”。丰田 1 将出现在下一行 - 但如果您删除该行并再次单击“添加行”,丰田 2 将出现 - 尽管该列中不再有丰田 1。
我怀疑这是因为此示例没有跟踪列中的最大整数。
如何能够单击“添加行”并使列中的整数恰好比当前最大值大一?
示例:假设我点击“添加行”五次。
假设我希望我的“ColumnA”更新为比当前最大值多 1。我应该看到以下内容:
[添加行]
A 列 B 列 C 1 2 3 4 5
编辑:
如果 ColumnA 的当前值为 1 3 6 8 17
然后我希望“添加行”创建 18 作为下一行。如果我删除“17”,然后单击“添加行”,我希望将“9”作为下一行的值。
【问题讨论】:
你真的想要 max 吗?还是第一个可用值? IE: 1, 4,5 是值然后添加一个新行应该在 2 弹出?或者你想让你的索引继续吗? IE:你有 1,2,3,你删除 2 然后 3 变成 2,你有 1,2 @GrégoryElhaimer 我不想在删除值时更改表中的任何其他值(即,如果我有 1、2、3 并且我删除 2 - 3 应该保留 3),我是寻找最大值 【参考方案1】:您必须找到网格数据的最大 ID。为此,您可以使用forEachNode((node, index))
onAddRowClick()
let max = 0
api.forEachNode( function(rowNode, index)
max < rowNode.myIndex ? max = rowNode.myIndex:;
);
// do your stuff with new index = max + 1
【讨论】:
以上是关于使用默认值在 ag 网格上添加行的主要内容,如果未能解决你的问题,请参考以下文章
如何在 ag-grid 中添加与单元格中的数据相同的默认 headerTooltip?