我遇到了一个我无法抓住的简单例外:
//myScript.js.coffee
try
$.ajax
async: false
type: "GET"
url: index_url
success: ->
//Do something
error: ->
//Do something else
fail: ->
//Do something else
catch e
console.log e
当我尝试使用错误的URL调用此Ajax时,会出现错误并且没有捕获它。有人有想法吗?
基本上我想在调用这个ajax请求之前测试url。
修改
我知道将try / catch与异步function
放在一起是没用的,但它表明我尝试了不同的方法来捕获那些exceptions
,但没有任何作用。
答案 0 :(得分:1)
您的语法错误:
try {
$.ajax {
async: false,
type: "GET",
url: index_url,
success: function(data) {
alert ("post is success");
},
error: function(request,error) {
alert(request.responseText);
alert(error);
}
}
} catch (e) {
console.log(e);
}
但正如所建议的那样,你可以根据结果使用ajax响应做你想做的事情......
答案 1 :(得分:0)
当您使用错误的网址进行ajax调用时,失败会写入错误函数或失败函数,您不需要尝试捕获ajax请求,因为它不会抛出任何类型至少在这种情况下是错误的。
答案 2 :(得分:0)
愚蠢的回答......
我的error
方法之前缺少空格。谢谢你的帮助。