如果发生错误,请在jqgrid中的添加对话框中设置消息

时间:2014-10-31 16:59:11

标签: error-handling jqgrid dialog add

如果在将记录添加到jqgrid时发生错误,我将从我的操作(asp mvc)返回以下内容

 return new HttpStatusCodeResult(400, "item not found");

这一切都很棒,但添加对话框中显示的消息是

"error Status: 'Workorder not found'. Error code: 400"

有没有办法只显示“找不到项目”的消息?

看起来js永远不会在添加选项中转到afterSubmit例程。有什么方法可以获得控制并确保只显示实际的错误信息?像onError选项之类的东西会很棒!

1 个答案:

答案 0 :(得分:0)

您可以使用errorTextFormat回调表单编辑或jqGrid的jqGridAddEditErrorTextFormat事件来控制错误消息中文本的格式。 errorTextFormat回调的第一个参数(或jqGridAddEditErrorTextFormat的第二个参数)是jqXHR对象,它是XMLHttpRequest的超集。参数的responseText属性是响应正文的文本。

此外,您不应使用HttpStatusCodeResult进行错误说明。您应该将错误说明放在HTTP响应正文中。例如,您可以使用WebFaultException来执行此操作:

return throw new WebFaultException<string> (
                     "item not found",
                     HttpStatusCode.BadRequest); // 400

顺便说一句,HTTP状态代码404(HttpStatusCode.NotFound)似乎更像是错误"item not found"