我已经使用jqGrid 4.5.2实现了一个基本的jqGrid表,我添加了'添加','编辑'删除' navGrid上的按钮。
使用'添加'或者'编辑'按钮生成一个模态,我在其中添加/编辑行的值。单击提交后,我的控制器被成功调用,但在表格中没有添加/编辑新行。
的javascript
jQuery(grid_selector).jqGrid({
data: grid_data,
datatype: "local",
colNames:[' ', 'Col1','Col2', 'Col3', 'Col4'],
colModel: modelArray,
editurl: "editController"
});
//navButtons
jQuery(grid_selector).jqGrid('navGrid',pager_selector,
{ //navbar options
edit: true,
add: true,
del: true,
},{ //edit record form
recreateForm: true
},{ //new record form
closeAfterAdd: true,
recreateForm: true,
viewPagerButtons: false
},{ //delete record form
recreateForm: true
}
);
Java控制器
String action = request.getParameter("oper");
Map<String, String[]> parameterMap = request.getParameterMap();
switch (action) {
case "del":
String ids = request.getParameter("id");
deleteEmployee(ids);
break;
case "edit":
RowData row = generateObjFromMap(parameterMap);
editRow(row);
break;
case "add":
RowData row1 = generateObjFromMap(parameterMap);
row1 = saveRow(row11);
break;
}
}
out.print("Success");
使用:
不起作用:
为什么在添加/编辑时没有更新表?
答案 0 :(得分:1)
组合datatype: "local"
和远程编辑editurl
似乎很奇怪。我建议你添加
reloadAfterSubmit: false
添加和编辑设置的选项。它将阻止默认重新加载网格。