在firefox中,使用jquery ajax不会调用错误和完整回调
error and complete callbacks are not called in firefox using jquery ajax
以下操作符合预期。
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function () {
if (xmlhttp.readyState == XMLHttpRequest.DONE) {
if (xmlhttp.status == 200) {
document.getElementById("myDiv").innerHTML = xmlhttp.responseText;
}
else if (xmlhttp.status == 400) {
alert('There was an error 400')
}
else {
alert('something else other than 200 was returned:' + xmlhttp.status);
}
}
}
xmlhttp.open("GET", "/services", true);
xmlhttp.send();
它提醒"返回了200以外的其他内容:404"。
但是下面的ajax和jquery不起作用。
$.ajax({
type: "get",
url: "/services",
error: function() {
console.log("A");
},
complete: function (xhr, data) {
console.log(arguments);
if (xhr.status != 0)
alert('success1');
else
alert('fail2');
}
})
Firebug显示404,但没有调用上面代码中的警报或控制台。我一直依靠jquery来解决跨浏览器问题,现在我正在考虑回到XMLHttpRequest()。
事实证明,这个问题是由于我的构建脚本损坏了我的代码(包括jquery)。我不知道为什么它之后不起作用。
但是在requirebuildgrunt文件中设置optimize: "none",
,使一切正常。
相关文章:
- 是什么让一个“;Uncaught RangeError:超过了最大调用堆栈大小“;错误(Chrome,在其他浏览器中显示
- Javascript播放声音会导致“NPObject上的错误调用方法”
- 未捕获的类型错误:调用函数时无法读取未定义的属性“then”
- 电话差距构建地理位置 NPObject 上的错误调用方法
- 间歇性 HTTP 403 禁止访问错误调用相同的 Ajax 代码
- 致命错误:调用未定义的函数 FusionCharts()
- 致命错误:未捕获错误:调用未定义的函数loginRelocate() Javascript
- Codeigntier/AJAX - 致命错误:调用未定义的函数 form_input() in
- 范围错误:调用堆栈超出异步 .eachSeries 上的范围错误
- 未捕获的类型错误:调用 push() 时的类型错误
- 错误:调用 waitForCondition 时错误响应状态:13
- JavaScript 错误:“调用的对象已与其客户端断开连接”在 IE8 中的 window.open 上
- AngularJS函数在路由更改时被错误调用
- Javascript中的作用域错误.调用该对象的不同方法中的方法
- Ajax返回错误调用错误Ajax错误调用
- “function"Javascript中没有定义错误:调用函数的正确方式是什么?
- YouTube iFrame API:没有就绪调用,没有错误调用
- 从 javascript 错误调用的引导进度条
- 小部件,从选项错误调用函数
- JavaScript -当错误调用其他函数时,函数不会抛出错误