Добавить строку в сельскохозяйственной сетке со значением по умолчанию

Я хотел бы добавить новую строку в сетку ag с одним из столбцов, имеющим значение по умолчанию. Моя цель - сделать это автоматически сгенерированное значение на 1 больше, чем максимальное число в столбце уже. (Это предполагает, что числа в столбце будут строго следовать друг за другом на единицу.)

Я просмотрел сетку ag. "Обновление данных", но проблема здесь в том, что, скажем, вы нажимаете "Добавить строку". Toyota 1 появится в следующей строке, но если вы удалите эту строку и снова нажмете «Добавить строку», появится Toyota 2, несмотря на то, что в столбце больше нет Toyota 1.

Я подозреваю, что это потому, что этот пример не отслеживает максимальное целое число в столбце.

Как можно было бы нажать «Добавить строку» и получить целое число в столбце ровно на единицу больше, чем текущий максимум?

Пример: допустим, я нажимаю «Добавить строку» пять раз.

Допустим, я хочу, чтобы мой «Столбец А» обновлялся на 1 больше, чем текущий максимум. Я должен увидеть что-то вроде:

[Добавить ряд]

Столбец A Столбец B Столбец C
1
2
3
4
5

Редактировать:

Если текущие значения столбца A
1
3
6
8
17

Затем я хотел бы «Добавить строку», чтобы создать 18 в качестве следующей строки. И если я удалю «17», а затем нажму «Добавить строку», я бы хотел «9» в качестве значения следующей строки.


person Jett    schedule 06.03.2019    source источник
comment
Тебе правда нужен Макс? Или первое доступное значение? IE: 1, 4,5 - это значения, тогда добавление новой строки должно появиться в 2? Или вы хотите, чтобы ваши индексы продолжали работать? IE: у вас есть 1,2,3, вы удаляете 2, затем 3 становится 2, и у вас есть 1,2   -  person Grégory Elhaimer    schedule 06.03.2019
comment
@GrégoryElhaimer Я не хочу изменять какие-либо другие значения в таблице всякий раз, когда я удаляю значение (т.е. если у меня есть 1,2,3 и я удаляю 2 - 3 должно оставаться 3), я ищу макс.   -  person Jett    schedule 06.03.2019


Ответы (1)


Вам нужно будет найти максимальный идентификатор данных сетки. Для этого вы можете использовать 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
}
person Grégory Elhaimer    schedule 06.03.2019