jqGrid: все строки в "режиме редактирования по умолчанию" по умолчанию

У меня есть jqGrid, где строка является редактируемой по клику (то есть "editRow" внутри "OnSelectRow" работает нормально). Но мое требование состоит в том, чтобы "загрузить сетку ВСЕМИ СТРОКАМИ В РЕЖИМЕ РЕДАКТИРОВАНИЯ по умолчанию (встроенное редактирование)", поэтому мне не нужно будет нажимать отдельные строки. Может ли кто-нибудь включить свет?

Я попробовал приведенный ниже код, но не работал

var data_val = myGrid.getRowData();
for (var i=0;i<data_val.length;i++)
{
myGrid.editRow(data_val[i], true);
}

1 ответ

Решение

Вы должны перечислить все строки сетки и вызвать editRow для каждого ряда. Код может быть следующим

loadComplete: function () {
    var $this = $(this), ids = $this.jqGrid('getDataIDs'), i, l = ids.length;
    for (i = 0; i < l; i++) {
        $this.jqGrid('editRow', ids[i], true);
    }
}

или следующее

loadComplete: function () {
    var $this = $(this), rows = this.rows, l = rows.length, i, row;
    for (i = 0; i < l; i++) {
        row = rows[i];
        if ($.inArray('jqgrow', row.className.split(' ')) >= 0) {
            $this.jqGrid('editRow', row.id, true);
        }
    }
}
Другие вопросы по тегам