如果我使用带有错误处理程序的jQuery ajax并且我正在调用的ASP.NET MVC操作会引发异常,我希望能够在用户的异常中显示该消息。现在我正在使用:
$.ajax( {
...
error: function(request,status,error) {
var exp = new RegExp('<title>(.*)<\/title>','i');
if (exp.exec(request.responseText)) {
alert( RegExp.lastParen );
}
else {
alert( status );
}
}
});
我希望有一个规范的jQuery实现,而不是自己动手。
答案 0 :(得分:3)
对于它的价值,我通常会有任何操作返回包含在try / catch块中的JsonResult,以便它不会抛出异常。相反,我为每个Json数组返回两个参数:“ok”(true / false)和“message”(包含在出现错误时显示给用户的消息)。
然后我省略$ .ajax“error”参数,并在JsonResult结果的“ok”参数上做一个简单的分支。
答案 1 :(得分:1)
你正在做什么没有错,但如果你想要想法......如果请求有应用程序/ json标题会将错误序列化为JSON的自定义错误页面怎么办?
答案 2 :(得分:0)
您正在寻找更容易而不是5行代码?真的?
第1行,解析错误。这是您的服务器的自定义,所以我没有看到jQuery的任何通用工具如何帮助。
第2-5行,根据解析显示不同的错误。同样,这是您的服务器的自定义。
我个人不会在这里使用匿名函数(称之为alertUser
或其他东西),但我认为这种方法没有错。