在以前的post中的解决方案之后,我发现如果extraparams存在,使用successfunc添加/编辑inlineNav后jqGrid刷新不起作用。jqGrid使用inlineNav刷新不能与extraparams
这里是我的代码:
var editOptions = {
keys: true,
successfunc: function() {
alert('success');
var $self = $(this);
setTimeout(function() {
alert('refreshing');
$self.setGridParam({ datatype: 'json' });
$self.trigger("reloadGrid");
}, 500);
}
.jqGrid('inlineNav', {
addParams: {
useDefValues: true,
addRowParams:
{
editOptions,
extraparam: {
userId: function() {
return currentUserId;
},
companyId: function() {
return currentCompanyId;
}
}
}
},
editParams: {
editOptions
}
我曾尝试在editOptions放置的不同组合,但没有运气。
这是我的理解,我需要将任何添加参数添加到添加参数部分。我只需要添加这些额外的参数。 –
@JerryP:是的,但是'addParams:{addRowParams:{editOptions,extraparam:{...}}}'您使用的是**错误**。 'addParams:{addRowParams:editOptions}'是正确的,'addParams:{addRowParams:{keys:true,extraparam:{...},successfunc:function(){...}}}'也是正确的。 addParams的值应该是**对象**,就像'addRow'函数的参数一样(参见[这里](http://www.trirand.com/jqgridwiki/doku.php?id=wiki:inline_editing#addrow) )。该对象可以具有'addRowParams'属性。 'addRowParams'属性的值应该是** object **和'editRow'的选项。 – Oleg
@JerryP:editRow的选项是在这里描述的(http://www.trirand.com/jqgridwiki/doku.php?id=wiki:inline_editing#editrow)。您使用的语法'{editOptions,extraparam:{...}}'已经错了。这里的editOptions是什么?正确的语法应该是'{property1Name:property1Value,property2Name:property2Value,...}'。 – Oleg