使用afterSubmit函数关闭jqgrid的添加/编辑表单
我是使用jqgrid的新手 我正在使用afterSubmit:function重新加载网格以进行添加/编辑更改,afterSubmit:function可以很好地处理更新的数据。但“添加记录”和“编辑表单”并未关闭。 我使用了以下选项closeAfterEdit:true,closeAfterAdd:true不关闭。 我的问题是在哪里使用这个选项会让人困惑 无需再验证:两种形式的函数都将关闭。 很抱歉因为我英语不好。 请查找以下导航网格代码:使用afterSubmit函数关闭jqgrid的添加/编辑表单,jqgrid,Jqgrid,我是使用jqgrid的新手 我正在使用afterSubmit:function重新加载网格以进行添加/编辑更改,afterSubmit:function可以很好地处理更新的数据。但“添加记录”和“编辑表单”并未关闭。 我使用了以下选项closeAfterEdit:true,closeAfterAdd:true不关闭。 我的问题是在哪里使用这个选项会让人困惑 无需再验证:两种形式的函数都将关闭。 很抱歉因为我英语不好。 请查找以下导航网格代码: $("#companyList").jqGri
$("#companyList").jqGrid('navGrid',"#pager2",{add:true,edit:true,del:true,refresh:false,
beforeRefresh: function(){
$("#companyList").jqGrid('setGridParam',{datatype:'xml'}).trigger('reloadGrid');
}},
{
afterSubmit: function() {
$("#companyList").jqGrid('setGridParam'{datatype:'xml'}).trigger('reloadGrid');
return [true,'',false]; // no error and no new rowid
}
},{
afterSubmit: function() {
$("#companyList").jqGrid('setGridParam',{datatype:'xml'}).trigger('reloadGrid');
return [true,'']; // no error
}
},
editParam = {
editData:{myparam:function(){return "myval";}},
reloadAfterSubmit: true,
editCaption:'Edit Record',
bSubmit:'Save',
url:'<%=request.getContextPath()%>/CompanyJqGrid? q=1&action=addData',
closeAfterEdit:true,
viewPagerButtons:false
},{closeAfterAdd:true});
您正在使用哪个jqgrid verion。我使用的是3.6+,这对我很有用
$("#gUserGrid").jqGrid('navGrid','#pagergUserGrid',{add:true,edit:true,del:true,search:true}, //NAVIGATION BAR
{
jqModal:true,
savekey: [true,13],
navkeys: [true,38,40],
width: 500,
reloadAfterSubmit:true
}, // edit options
{ jqModal:true
,reloadAfterSubmit:true
}, // add options
{
reloadAfterSubmit:true}, //del options
{
} // search options
);
以下是navGrid方法的参数:
.navGrid('#gridpager',{parameters}, prmEdit, prmAdd, prmDel, prmSearch, prmView);
要在编辑后和添加行后关闭对话框窗口,必须将closeAfterEdit:true添加到prmEdit,并将closeAfterAdd:true添加到prmAdd对象。
就像这里:
$("#companyList").jqGrid('navGrid',"#pager2",{add:true,edit:true,del:true,refresh:false,
beforeRefresh: function(){...}},
{//prmEdit
closeAfterEdit:true,
afterSubmit: function() {...}
},
{//prmAdd
closeAfterAdd:true,
afterSubmit: function() {...}
}
)
afterSubmit的正确语法为:
这为我解决了这个问题
afterSubmit: function (resp, postdata)
{
return [true,"",null];
}, closeAfterEdit: true
事实上,这很容易做到,您只需要添加一个命令行,如下代码所示 closeAfterEdit:true
afterSubmit: function (resp, postdata)
{
return [true,"",null];
}, closeAfterEdit: true
$('#jQGridDemo').jqGrid('navGrid', '#jQGridDemoPager',
{
edit: true,
add: false,
del: false,
search: false,
},
{ //EDIT
closeOnEscape: true,//Closes the popup on pressing escape key
closeAfterEdit: true,
//afterSubmit: function (response, postdata) {
// }
}