结合使用JSONP和jQuery时是否可能捕获错误?我已经尝试了$ .getJSON和$ .ajax方法,但是都无法捕获我正在测试的404错误。这是我尝试过的方法(请记住,这些方法都可以成功运行,但是在失败时我想处理):
jQuery.ajax({ type: "GET", url: handlerURL, dataType: "jsonp", success: function(results){ alert("Success!"); }, error: function(XMLHttpRequest, textStatus, errorThrown){ alert("Error"); } });
并且:
jQuery.getJSON(handlerURL + "&callback=?", function(jsonResult){ alert("Success!"); });
我也尝试过添加$ .ajaxError,但是那也不起作用:
jQuery(document).ajaxError(function(event, request, settings){ alert("Error"); });
预先感谢您的任何答复!
似乎不返回成功结果的JSONP请求永远不会触发任何事件,成功或失败,无论好坏,这显然是设计使然。
搜索他们的错误跟踪器后,有一个补丁程序可能是使用超时回调的可能解决方案。请参阅错误报告#3442。如果您无法捕获该错误,则至少可以在等待一段合理的时间后才能成功。