14

我有 jqGrid 3.5(完整)大部分工作。我让它通过多选选项检索数据。我无法开始工作的一部分是获取选定的行。文档状态:

要获得选定的行,我们可以使用 getGridParam('selarrrow') 方法。使用我们的示例,我们可以这样写:

jQuery("#grid_id").getGridParam('selarrrow');

这将返回一个包含所选行的数组(即上图中的 ["11","9"])。数组中的值是所选行的 id。

这不起作用并返回一个未定义的值(是的,我选择了行)。我的网格配置中也有 xmlreader:id 设置。

有人可以指点我看的方向吗?我已经尝试了我能想到的一切都无济于事。

更新: redsquare 关于不正确的选择器是正确的。我的包含 div 与网格具有相同的 ID,当我去检查我的设置代码时我注意到了这一点,并且选择器已table#results更改,并且一切正常。谢谢大家。如果您发布答案 redsquare 我会接受它,因为它是正确的答案。

4

5 回答 5

18

试试这个,它将返回一个选定行的 id 数组。

var s;
s = jQuery("#yourGridName").jqGrid('getGridParam','selarrrow');
alert(s);
于 2012-09-26T13:30:37.960 回答
8

你能先帮我检查一下选择器吗?如果它们是正确的,您可以尝试上传您的页面或在 jsbin.com 上复制问题。:)

于 2009-08-20T22:34:33.473 回答
4
var rowKey = jQuery("#yourGridName").jqGrid('getGridParam','selrow');
var rowObject = jQuery('#yourGridName').getRowData(rowKey);

这还将提供行详细信息并使用 normal 。运算符,您可以获得列值。

于 2014-12-09T05:38:33.693 回答
3

您必须参考的不是 jQuery 对象,而是 jqGrid iteft。

因此,在网格初始化期间,您可以编写如下代码:

var myGrid = $("#list")..jqGrid(....);

在您的事件处理程序中,如果您想检索所选行的 ID,您必须编写:

var rows = myGrid.getGridParam('selarrrow'); 
于 2009-11-21T18:36:35.900 回答
2

获取所选行的另一种方法:jQuery('#grid').jqGrid('getGridParam','selarrrow');

于 2011-04-25T11:20:20.420 回答