2012-01-26 56 views
1

我正在使用loadonce選項和jqGrid從數據庫中提取數據。記錄的數量不是很大(幾百個),但太大而無法在整個屏幕上看到。至於我不得不使用分頁。如何迭代客戶端上的所有記錄?我知道我可以使用getDataIDs,但這隻能給我一次屏幕上的所有記錄。我看過,但我還沒有找到一種方法來查看除服務器端以外的所有數據。如何遍歷jqGrid緩存中的所有項目

回答

1

你可以得到所有的代碼在本地數據,如

var gridData = $("#grid").jqGrid('getGridParam', 'data'); 

要獲得gridData陣列中的行的所有ID和對應的索引可以使用

var idsToDataIndexes = $("#grid").jqGrid('getGridParam', '_index'); 

的id網格將是idsToDataIndexes(可由for (var id in idsToDataIndexes)枚舉)的屬性,屬性的值是gridData數組中的索引。

+0

我們是否可以像這樣迭代數據:for(var i in gridData){...} without idsToDataIndexes? – kozla13

+0

@ kozla13:如果你只需要*數據,沒有rowid *,那麼你可以迭代數組'gridData'。儘管如此,'for(var i in gridData){...}'的使用會非常糟糕。 JavaScript有它的規則和對象繼承。你應該使用'var i,l = gridData.length; for(i = 0; i Oleg

相關問題