日期:2014-05-17  浏览次数:20461 次

JQuery $.ajax 如何捕获异常信息?
error (Function) : (默认: 自动判断 (xml 或 html)) 请求失败时调用时间。参数:XMLHttpRequest 对象、错误信息、(可选)捕获的错误对象。Ajax 事件。 

function (XMLHttpRequest, textStatus, errorThrown) {
  // 通常 textStatus 和 errorThrown 之中
  // 只有一个会包含信息
  this; // 调用本次AJAX请求时传递的options参数


如此方法,如何捕获throw new Exception("XXX");出的信息呢?

textStatus 貌似就是error的名字哦。

------解决方案--------------------
$.ajax({
type: p.method,
url: p.url,
data: param,
dataType: p.dataType,
success: function(data) { g.addData(data); },
error: function(data) {
g.addData(null)//这是发生异常的处理过程
return false;
}
});
------解决方案--------------------
我也碰到这种问题,我是这样解决的。
在服务器端的一般处理程序中
try
{
........ //业务代码
}
catch(Exception e)
{
context.Response.ContentType = "text/plain";
context.Response.StatusCode =500;
context.Response.Write( e.Message);
context.Response.End();
}
在客户端
//post
$j.ajax({
type :"POST",
url :url,
data :modify,
success :function(msg){
.......//其他成功时的处理
alert("保存成功!");
},
//async :false,
error:function(XmlHttpRequest,textStatus, errorThrown)
{
alert("保存失败;"+XmlHttpRequest.responseText);
}
});