1

ページング付きのグリッドがあります。すべてのページには最大10行あります。3つのレコードしかない場合は、7つの空の行を表示する必要があります。

エクセルシートレイアウトのように

このような:

ここに画像の説明を入力してください

私は解決策を得ました:

loadComplete: function (data) {
                var pagesize = jQuery("#list5").jqGrid('getGridParam', 'rowNum');
                if (data.rows.length < pagesize) {
                    for (i = 0; i < pagesize - data.rows.length; i++) {
                        $("#list5").addRowData(i + 1, {});
                    }
                }
            }

他の効率的な解決策がある場合は、私に知らせてください。

4

1 に答える 1

2

それに関する問題は、右下のページ数が間違っていることです。空白行が含まれています。たとえば、95行しかない場合は「91から100を表示」。これに対する解決策は次のとおりです。

loadComplete: function (data) {
  var grid = jQuery("#list5"),
    pageSize = parseInt(grid.jqGrid("getGridParam", "rowNum")),
    emptyRows = pageSize - data.rows.length;

  if (emptyRows > 0) {
    for (var i = 1; i <= emptyRows; i++)
        // Send rowId as undefined to force jqGrid to generate random rowId
        grid.jqGrid('addRowData', undefined, {});

    // adjust the counts at lower right
    grid.jqGrid("setGridParam", {
      reccount: grid.jqGrid("getGridParam", "reccount") - emptyRows,
      records: grid.jqGrid("getGridParam", "records") - emptyRows
    });
    grid[0].updatepager();
  }
}
于 2012-11-23T13:40:06.870 に答える