在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/