jqGrid getData仅返回当前页面的数据

jqw*_*wha 9 jqgrid

希望这是一个快速的!

我有一个使用'clientSide'(本地)数据的可编辑网格,我现在希望迭代javascript中的所有行并自己处理/打包数据,然后通过jQuery.ajax调用将其发送到服务器.

问题是,出乎意料地(至少对我来说),使用以下代码只检索当前可见网格页面的行!如何获取网格中的所有行(即,我有四页,每页10条记录,此代码仅在第1页时返回前10条)?它们必须出现在客户端的某个地方,因为我可以浏览并编辑行,并且数据是持久的,而无需调用服务器!:)

    cacheCONF = [];
    var rows= $('#myGrid').getRowData();  //<--Need to get ALL rows here!!!
    var cacheRowID = 0;
    for (var row in rows) {
        if (rows[row].Action == 'Yes') {
            cacheCONF.push({ RowID: rowID, System: rows[row].System, Action: rows[row].Action, Account: '-', Required: '-'  });
            rowID++;
        }
    }
Run Code Online (Sandbox Code Playgroud)

jqw*_*wha 8

托尼解决方案:

var mydata = $("#grid").jqGrid('getGridParam','data');
Run Code Online (Sandbox Code Playgroud)

  • 但是在排序然后调用该函数时,这将不会返回数据的正确排序顺序,是否还有其他功能呢? (2认同)

Yas*_*ser 5

遇到过类似的问题,下面是我最终使用的内容

var data = $("#table-id").jqGrid('getGridParam', 'data');
for (var i = 0; i < data.length; i++) {
    var f_name = data[i].FirstName;
    var l_name = data[i].LastName;
    // blah... blah..
}
Run Code Online (Sandbox Code Playgroud)

参考:http://www.trirand.com/blog/? page_id = 393 / help/jqgrid-getdata-only-returns-data-for-current-page/