我使用jgGrid 4.5.4。当用户按下Delete
按钮时,我需要向服务器发送两条信息:记录ID和记录版本(用于乐观锁定)。我知道serializeDelData
回调可以用于此目的:
serializeDelData:serializeDelDataCallback
...
function serializeDelDataCallback(data) {
// The "data" argument has "id" and "oper" fields only! Where can I get other fields of the current grid row?
...
return $.param(modifiedData);
}
但是,serializeDelData
回调的参数仅包含id
和oper
字段。我使用类似的回调来发布新的和更新的记录 - 该回调提供当前行的所有字段。
我在哪里可以获得serializeDelData
回调中当前网格行的其他字段? (我需要得到行版本,它是网格中的隐藏字段。)
答案 0 :(得分:1)
如果使用乐观锁定,那么网格的行可能包含记录版本列。
onclickSubmit
回调的最简单方法(请参阅the documentation),例如以下表格
onclickSubmit: function (options, rowid) {
return {
rowVer: $(this).jqGrid("getCell", rowid, "rowVersion")
};
}
在上面的代码中,我假设您的列名为rowVersion
,其中包含您需要作为rowVer
param发送的记录版本。一般情况下,您可以在getCell
内以相同的方式使用serializeDelData
,但onclickSubmit
似乎更简单。返回的onclickSubmit
属性将与Delete使用的标准参数结合使用,因此您应该拥有所需的所有信息。