在JQGrid中

 var gridData=$("#SearchResults").jqGrid('getRowData')

上面的行为您提供了所有行的网格数据,有一种方法可以让我仅获取所选行的网格数据。
selRowId = myGrid.jqGrid ('getGridParam', 'selrow'),
上面给出了选定的行ID,但我希望所有选定行的数据以及它与gridData返回的数据一样,但我只需要选定行的数据

最佳答案

非常简单。 getRowData方法的第二个 optional 参数是请求数据的行的rowid(请参阅the documentation)。所以你可以使用

var selRowId = myGrid.jqGrid("getGridParam", "selrow");

首先获取最后选择的rowid,然后通过获取行的数据
var rowData = myGrid.jqGrid("getRowData", selRowId);

如果您使用datatype: "local"或某些远程datatype("xml""json"),但使用loadonce: true,则jqGrid将数据内部保存在data数组中。在这种情况下,getLocalRow方法的用法比getRowData的用法更有效:
var rowData = myGrid.jqGrid("getLocalRow", selRowId);

如果使用multiselect: true选项,则jqGrid支持所选行ID的selarrrow数组,您可以在循环中获取所有必需的数据:
var i, selRowIds = myGrid.jqGrid("getGridParam", "selarrrow"), n, rowData;
for (i = 0, n = selRowIds.length; i < n; i++) {
    rowData = myGrid.jqGrid("getLocalRow", selRowIds[i]);
    // one can uses the data here
}

关于javascript - 如何返回选定行的jqgrid数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25826464/

10-11 04:40
查看更多