我正在使用内联编辑和删除功能。我没有明确使用任何editGridRow
或delGridRow
方法。我需要验证服务器端的数据并显示结果。如果要删除,我会在delOptions
属性afterSubmit
,afterComplete
下有很多活动。但是对于编辑,我不知道我应该用来从服务器获取验证结果并将其显示给用户的事件。建议?
//My action colmodel
colEditModel = {
name: "actions",
width: 90,
formatter: "actions",
sortable: false,
search: false,
formatoptions: {
keys: true,
editOptions: {},
addOptions: {},
delOptions: {
onclickSubmit: function (options) {
options.delData = {//Some data};
options.url = "Allocation/EditAllocation";
},
}
}
};
// Grid
$("#jqGrid").jqGrid({
url: "Allocation/GetAllocations",
mtype: "GET",
datatype: "json",
colModel: col_model,
colNames: col_names,
postData: { selectedDate: dateValue, filterCriteria: criteria },
editurl: "Allocation/EditAllocation",
serializeRowData: function (postdata) {
var requestData = { // some data};
return requestData;
},
loadonce: true,
viewrecords: false,
height: 330,
width: null,
shrinkToFit: false,
autoheight: true,
pager: "#jqGridPager",
scroll: false,
rownumbers: false,
treeGrid: false,
gridview: true,
});
答案 0 :(得分:1)
您使用的jqGrid版本以及您使用的jqGrid的分支的确切实现depand。如果您使用旧版本的jqGrid,则可以在onError
formatoptions
内指定formatter: "actions"
回调来处理内联编辑错误并使用delOptions.errorTextFormat
({{1}回调,你必须在errorTextFormat
的{{1}}属性中定义。
重要的是要理解,服务器端验证与来自服务器的任何其他错误报告相同。服务器应将错误描述作为HTML片段返回。响应必须使用任何错误的HTML状态代码(值> = 400)。