我有jqGrid 3.5(完整版)主要工作。我让它使用多选选项检索数据。我无法工作的一部分是获取所选行。 docs州:
要获取选定的行,我们可以使用getGridParam('selarrrow')方法。使用我们的示例,我们可以写下:
。的jQuery( “#grid_id”)getGridParam( 'selarrrow');
将返回具有所选行的数组(即,上图中的[“11”,“9”])。数组中的值是所选行的id。
这不起作用并返回未定义的值(是的,我选择了行)。我的网格配置中也有xmlreader:id设置。
有人能指出我的方向吗?我已经尝试了一切我无法想到的事情。
更新: redsquare对于错误的选择器是正确的。我的包含div与网格具有相同的ID,当我去检查我的设置代码并且选择器table#results
已更改并且一切正常时,我注意到了这一点。谢谢大家。如果您发布答案redsquare,我会接受它,因为它是正确的答案。
答案 0 :(得分:17)
试试这个,它会返回一系列选定行的id。
var s;
s = jQuery("#yourGridName").jqGrid('getGridParam','selarrrow');
alert(s);
答案 1 :(得分:8)
你能先检查我的选择器吗?如果它们是正确的,您可以尝试上传您的页面或在jsbin.com上复制该问题。 :)
答案 2 :(得分:4)
var rowKey = jQuery("#yourGridName").jqGrid('getGridParam','selrow');
var rowObject = jQuery('#yourGridName').getRowData(rowKey);
这也将给出行详细信息并使用正常。运算符,您可以获得列值。
答案 3 :(得分:3)
你必须不是指jQuery对象,而是指jqGrid itseft。
因此,在网格初始化期间,您可以编写如下代码:
var myGrid = $("#list")..jqGrid(....);
在您的事件处理程序中,如果要检索所选行的ID,则必须写:
var rows = myGrid.getGridParam('selarrrow');
答案 4 :(得分:2)
获取所选行的另一种方法:jQuery('#grid').jqGrid('getGridParam','selarrrow');