在JqGrid的新模型表单中没有显示使用afterSubmit的错误处理

时间:2012-05-02 21:24:24

标签: jquery jqgrid error-handling

我正在尝试向JqGrid上的用户显示服务器错误

这是我的代码:

function addRow() {
$("#updateList").jqGrid('editGridRow', "new", {
    editData: {
        Year: function () { return $('#year option:selected').val(); }
    }
     , afterSubmit: function (response, postdata) { return [false, "fdfdfdfd", "141"]; }
    , height: 400, width: 400, reloadAfterSubmit: true
});

}

我确实从带有StatusCode 500的服务器获取了json错误 我只是想测试所以我把

return [false, "fdfdfdfd", "141"]

但我总是看到默认的错误消息

“错误状态:'错误'。错误代码:500”

这是添加模型表单的“新”行。不是内联编辑。

感谢您的帮助......

1 个答案:

答案 0 :(得分:3)

可以使用afterSubmit时存在误解。如果您的服务器框架生成始终成功的HTTP代码,并且您只能将有关错误的信息放在成功响应的正文中,那么该函数可能会有所帮助。

在您的情况下,服务器返回状态代码500.因此您应该使用errorTextFormat。试试

errorTextFormat: function (response) {
    return "ERROR: fdfdfdfd!";
}

您可以找到errorTextFormat的更有趣的实现,例如here。我建议您另外阅读the answer并从答案中使用the demo