JQuery如何找出ajax错误是什么?

时间:2010-02-05 19:10:22

标签: jquery ajax debugging

我有以下一些代码,我只是通过在firebug中运行来尝试

$.ajax({
  type:"POST",
  url:"http://mpdomain/WebService.asmx/Operation",
  data: "{'parameter1': '44906'}", 
  contentType: "application/json;charset=utf-8",
  dataType: "json",
  success: function(data) { alert("succsess") },
  error: function(e, ts, et) { alert(ts) }
})

理论上它应该有效。但是,错误处理程序被触发,并且ts被简单地设置为“错误”。如何获得有关出错的更多细节?

2 个答案:

答案 0 :(得分:31)

$.ajax({
  type:"POST",
  url:"http://mpdomain/WebService.asmx/Operation",
  data: "{'parameter1': '44906'}", 
  contentType: "application/json;charset=utf-8",
  dataType: "json",
  success: function(data) { alert("succsess") },
  error: function(ts) { alert(ts.responseText) }
})

答案 1 :(得分:5)

jQuery给出的错误消息不是很具描述性。它可以是“超时”,“错误”,“未修改”或“解析错误”。 http://api.jquery.com/jQuery.ajax/所以你可以得出的结论是,它不是超时,也不是你得到的修改或解析错误。

确保在Firebug中看到请求设置为正确的地址并且正在设置正确的数据。您还可以查看响应,这样如果您还可以访问服务器代码,那么快速而肮脏的方式就是回应服务器端的内容并使用Firebug查看响应。

此外,我不确定这是否是一个问题,但尝试将数据设置为{parameter1:44906}(基本上删除引号,以便传入对象而不是字符串)。