jQuery从不为ajax调用调用.done()或.always()
jQuery never calls .done() or .always() for ajax call
我有一个简单的获取请求:
$.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.
有什么想法吗?
您的问题可能是使用的jQuery版本。在jQuery1.5之前,jqXHR
对象不会返回$.get()
,这就是允许您使用promise行为的原因。相关的jQuery文档。
毕竟我错过了ajax调用的异步特性。我在所有console.log
语句和ajax调用后的语句上都有一个断点。由于ajax调用后的语句首先被调用,所以我认为console.log
语句都不会被调用。
由于我需要ajax调用的结果才能继续,所以我必须将所有代码移到done()
函数中。
相关文章:
- 如何使jQuery插件函数可调用以供独立使用,而不在集合上操作
- D3在一个调用中绘制不同的SVG形状,没有可见性
- 如何从Java/scala调用js美化程序
- 如何调用这个匿名 JavaScript 函数
- 如何从模块链中调用函数.导出到节点中
- 我需要从php调用javascript或jquery
- Chrome开发工具(如何知道我在调用哪个javascript对象)
- 单击按钮后如何逐个调用分区,上一个分区将隐藏
- 另一个ajax调用中的Jquery ajax调用在for循环中没有按预期工作
- Twitter Bootstrap typeahead:使用“this”获取上下文/调用元素
- node.js:setInterval()正在跳过调用
- 如何在单击复选框后调用控制器方法
- 如何在JQuery函数中定义一个值,然后调用另一个函数并使用该值
- 使用Google Visualization动态调用构造函数
- 如何在webView,Android中从@JavascriptInterface方法调用Javascript
- 是否可以将一个函数输入连接到另一个函数调用的文本
- 调用函数内部的函数
- 确定 .always 函数中的 AJAX 调用是否失败
- 是否保证传递给 always 函数的回调将在函数(数据)回调完成其工作后调用
- jQuery从不为ajax调用调用.done()或.always()