我有这个简单的获取请求:
$.get('ri/i18n/locale')
.done(function() {
console.log(this);
})
.fail(function() {
console.log(this);
})
.always(function(){
console.log(this);
});
不幸的是,没有一个处理程序被调用过。
我可以确认在浏览器中调用ri/i18n/locale
会返回一个有效的JSON字符串。我正在使用jQuery 1.11.1。
任何想法有什么不对?
答案 0 :(得分:0)
您的问题可能是您正在使用的jQuery版本。在jQuery 1.5之前,jqXHR
对象未返回$.get()
,这使您可以使用promise行为。 The relevant jQuery documentation
答案 1 :(得分:0)
毕竟我只是错过了ajax调用的异步性质。我在所有console.log
语句和ajax调用之后的语句中都有一个断点。由于ajax调用之后的语句被首先命中,我假设没有调用console.log
语句。
由于我需要继续调用ajax的结果,我必须将所有代码移到done()
函数中。