此link有:
editRow
Calling conventions:
jQuery("#grid_id").editRow(rowid, keys, oneditfunc, succesfunc, url, extraparam, aftersavefunc,errorfunc, afterrestorefunc);
or when we use the new API
jQuery("#grid_id").jqGrid('editRow',rowid, keys, oneditfunc, succesfunc, url, extraparam, aftersavefunc,errorfunc, afterrestorefunc);
我明白这一点:
jQuery("#grid_id").editRow(rowid, keys, oneditfunc, succesfunc, url, extraparam, aftersavefunc,errorfunc, afterrestorefunc);
实际调用是否使用行ID rowid编辑行。所以它实际上将行放入编辑模式。
在我的jqgrid中设置它,以便每行旁边都有一个铅笔图标,然后单击它来编辑行“
所以显然我不是手动调用该方法来编辑行,但编辑铅笔点击会自动调用编辑。
我想要设置的是,在编辑之后单击保存图标,我希望它在保存方法后调用,即:
function reload(rowid, result) {
alert("Hi");
$("#list").trigger("reloadGrid");
}
所以我在考虑使用他们指定用于新API的代码:
jQuery("#grid_id").jqGrid('editRow',rowid, keys, '', reload);
我不确定这是如何工作的,但我把它放在我的网格之后。我知道这不是一个方法调用,而是设置它来告诉它在editRow发生时该怎么做。
嗯,它不起作用。
有人能告诉我,我误解了代码实际上做了什么吗?如果是这样,它做什么?另外如何在提交我的场景后实现方法调用?
答案 0 :(得分:1)
如果我理解正确,您应该使用aftersavefunc
而不是succesfunc
的{{1}}参数。
如果您使用formatter: 'actions',则应使用editRow
的{{1}}属性。我建议您查看the answer这是我对afterSave
的第一次体验,以及代码中的注释提供了一些额外的建议。