jqGrid-如何通过单击链接保存行单元格

jqGrid-如何通过单击链接保存行单元格,jqgrid,Jqgrid,我有一个包含一些隐藏数据的网格,并且在每行上都有一些自定义链接(例如:“发布/取消发布”、“编辑”、“删除”)。当我在每一行上单击“发布/取消发布”链接时,行数据应自动更新,值应发布到服务器。成功提交后,网格行应自动刷新为新值。如何在上述场景中实现此功能 注意:当我点击链接时,该行永远不应该变成可编辑模式 您不知道使用哪种编辑模式。似乎你使用了单元格编辑。如果使用单元格编辑模式,则可以改用saveCell(请参阅)。如果使用行编辑模式,则可以使用saveRow保存数据(请参阅) 要将其他隐藏列数

我有一个包含一些隐藏数据的网格,并且在每行上都有一些自定义链接(例如:“发布/取消发布”、“编辑”、“删除”)。当我在每一行上单击“发布/取消发布”链接时,行数据应自动更新,值应发布到服务器。成功提交后,网格行应自动刷新为新值。如何在上述场景中实现此功能


注意:当我点击链接时,该行永远不应该变成可编辑模式

您不知道使用哪种编辑模式。似乎你使用了单元格编辑。如果使用单元格编辑模式,则可以改用
saveCell
(请参阅)。如果使用行编辑模式,则可以使用
saveRow
保存数据(请参阅)

要将其他隐藏列数据(如果使用行编辑模式)发送到服务器,可以对隐藏列使用以下附加列选项:

editable: true, editrules: { edithidden: false }
见和


任何单元格都可以具有附加类“not editable cell”,以拒绝在单元格编辑模式下切换编辑模式。您可以使用
classes
column选项将此类添加到链接列。

感谢您的回复。我已经经历了上述场景,但我的问题是,当我单击“发布/取消发布”链接时,行或单元格不应变为可编辑模式。它只需执行一些后端操作并刷新特定的行网格。假设我有一个保存用户详细信息的网格,我想从列表中取消激活一个用户。此时,我将单击“发布/取消发布”链接,行或单元格永远不应转换为可编辑模式(即输入元素),而应将一些数据发送到服务器,在服务器上更新用户状态。Karuh,您不需要编写您使用的编辑模式。是单元格编辑模式吗?然后,在类“不可编辑单元格”上设置链接为“发布/取消发布”的列将永远不会变为单元格可编辑模式。如果不需要选择行,也可以在选择行之前使用
事件并返回
false
。可能会帮助你。如果你仍然有这个问题,请发布一个代码示例,让一切变得更清楚。Oleg,我以不同的方式解决了上述问题,当点击链接时,我将使用“formatter”选项调用js函数。在该函数中,我将使用“setRowData”方法更改单元格值(即客户端更改)。如果行正确更新,此函数将返回true。如果这是真的,我将触发一个ajax操作,它将在后端执行一些操作。因此,我可以通过单击链接轻松地动态管理行值(即在可编辑模式下不更改行)。确定!如果问题解决了就好了。另外,函数
saveCell
保存数据(如
setRowData
)包括数据解码取决于单元格类型(复选框、选择等),如果cellsmit='remote',则进行ajax调用;如果cellsmit='clientArray',则在本地保存数据。一般来说,您可以自己做很多事情,但我建议您投入一点时间来研究jqGrid的可能性。它将简化开发。最好的方法是查看jqGrid的源代码,例如grid.celledit.js,它是标准下载的一部分。