我有一个正在运行的JQgrid版本,我在该网格中搜索,选择一行并进行编辑没有问题。
当我向上游传递时,PHP代码显示POSTed变量BUT的值
回发的ROWid对应于我编辑的网格中所选ELEMENT的ROWid而不是
在orginating表中返回元素的TRUE行。
因此,我不确定如何根据THAT行更新/删除条目。
HOW让JQgrid'知道'要在'真实表'中更新哪一行,或者我只需要添加一个新列
自动增量并传回那个用作真实表中行的关键来更新?
不要以为我需要在这里发布代码...... :)
答案 0 :(得分:0)
您的问题间接表明您以不太正确的方式填充jqGrid。有人看到你不明白什么是“rowid”。
基于HTML表的jqGrid构建网格。将放在表中的主要信息是数据行。 HTML表格中的行是<tr>
元素,其中<td>
个元素作为单元格。在网格中填充数据期间,将填充所有<tr>
元素,包括id
属性,如
<tr id="1410"><td>cell for the first column<td><td>cell for the second column<td></tr>
重要的是要了解 jqGrid的当前实现必须为每一行{/ 1}}属性。您从服务器回发的JSON或XML数据必须包含id
信息(如果jqGrid输入数据,请参阅the documentation了解不同支持的格式)。
因此,如果您将JSON或XML数据的id
属性填充为数据库中的ID,则您描述的问题永远不会存在。如果您不填充id
属性或以错误的方式填充它,则存在问题。在这两种情况下,jqGrid都不会找到有关id的任何信息,并且在这种情况下,它必须自己生成id
元素的id。目前jqGrid在序号为1,2,3,...的情况下使用,但可以在任何新版本的jqGrid中进行更改。
因此,我建议您在填写时验证回发到jqGrid的数据格式。如果您在查找错误时遇到问题,则应在问题文本中包含jqGrid的完整定义,并另外包含服务器响应(JSON或XML数据)。要捕获确切的服务器响应,您可以使用例如Fiddler或Firebug。