我可以从发布到浏览器的jqGrid JSON数据中看到行ID(在JSON行数据中用“i”表示)正确通过,但是当我做出选择并检查{{1}时它显示选定的行号而不是ID。
有没有人有这方面的经验?感谢
更新
下面是JSON结果的图片(复制并粘贴不是一个选项)
(bigger version of the image here)
JSON Result http://i31.tinypic.com/25qwufd.png
用于检查选择的javascript代码:
$('#list').getGridParam('selarrrow')
答案 0 :(得分:4)
Justin和Oleg - 我确定你被放在这个星球上解决世界的jQueries :)再次感谢你对这个问题的帮助。
<强>解强>
在我的代码中,网格的列定义没有指定一个key
列,从中可以绘制每一行的ID - 如何在上面的屏幕截图中获取i = <id>
,我不知道,但它绝对不是不要为每一行使用该ID。我将网格定义更改为以下内容:
...,
colNames: ['ID', 'Family', 'Variety', 'Type', 'EDI #', 'Colour', 'Swatch'],
colModel: [{ name: 'id', index: 'id', key: true, hidden: true },
...
(注意ID列的colModel中的key: true
)
答案 1 :(得分:0)
此选项是只读的。当multiselect设置为true时,确定当前选定的行。这是一维数组,数组中的值对应于网格中选定的id。
因此,如果它返回行号,则jqGrid API中存在错误。您是否可以发布更多信息,例如您对selarrrow
的通话结果以及网格中ID的完整列表?
答案 2 :(得分:0)
我认为忽略从服务器发送的ID,因此行号将是真正的行ID。您可以使用getDataIDs
事件中的loadComplete
方法对此进行验证。为什么ID会被忽略我只能说你发布更多信息。