我正在努力使用 Json 解析制作一个迷你应用程序。我通过点击 url http://localhost:3000/cities.json 得到的输出如下
[
{
"id": 1,
"name": "Bangalore"
},
{
"id": 2,
"name": "Chandigarh"
},
{
"id": 3,
"name": "Chennai"
},
{
"id": 4,
"name": "Hyderabad"
},
]
我已经使用函数解析了这个
$.getJSON("http://localhost:3000/cities.json?&callback=?", function(data) {
//something something
}
现在我想向其中添加 .error 函数,这样万一响应出现问题或服务器没有响应,我可以通过发出类似的警报来了解它
.error(function(){alert("error");})
我尝试了以下方法
$.getJSON("http://localhost:3000/cities.json?&callback=?", function(data) {
//something something
}).error(function(){
alert("error");
})
我也用这个方法尝试过
var cities = $.getJSON("http://localhost:3000/cities.json");
cities.error("hi");
但是它们都不起作用。为了检查错误,我停止了本地服务器,但它没有给我任何警报。请指导我应该走哪条路?
------编辑--------
还尝试使用
var jqxhr = $.getJSON("http://localhost:3000/cities.json?callback=?", function() {
alert("success");
})
.success(function() { alert("second success"); })
.error(function() { alert("error"); })
.complete(function() { alert("complete"); });
如果我的 localhost:3000 服务器正在运行,它会给我警报成功和第二次成功,但如果我停止它,则不会出现错误调用,也使 url 只是 http://localhost:3000/cities.json强> 无论服务器是否运行,总是倾向于给出错误
最佳答案
您可以使用ajaxSetup
$.ajaxSetup({
error:function(XMLHttpRequest) {
//error
console.log(XMLHttpRequest.responseText);
}});
并且您的 getJSON
照常进行
$.getJSON("http://localhost:3000/cities.json?&callback=?", function(data) {
//something something
});
关于jquery - 如何使用 JQuery 解析 json 响应并添加 error、complete 等功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7739111/