I am trying to figure out why the failed callback is not working for this deferred
http://jsfiddle.net/austinbv/wzve6/6/
get_each_total = function(callback) {
var requests;
requests = [];
var url;
url = "http://otter.topsy.com/search.js?callback=?&apikey=38A260E9D12A4908B1AF9184B691131&q=justin+bieber&window=d";
requests.push($.getJSON(url, function(data) {}));
$.when.apply($, requests).then(function() {
callback();
}, function() {
alert("There was an error communicating with a remote library, try again in a few");
});
};
get_each_total_broken = function(callback) {
var requests;
requests = [];
var url;
url = "http://otter.topsy.com/hjhkl/sehjkhhkjhkarch.js?callback=?&apikey=38A260E9D12A4908B1AF9184B691131&q=justin+bieber&window=d";
requests.push($.getJSON(url));
$.when.apply($, requests).then(function() {
callback();
}, function() {
callback();
});
};
$(function() {
get_each_total_broken(function() {
alert("fail");
});
});
I had a question Jquery deferred call back oddness that is similar but I figured this is different enough it should have it’s own. Thanks again any help
Edit
After talking talking in the jQuery irc it looks like it my be a bug!
I commented in the other question but the problem is your url: it has two
?and it shouldn’tShould be
or even:
You could url encode the
?to%3For use the second version and jQuery will url encode it for you.UPDATE:- so i tested this on a view that returned a plain 500 internal server error. It worked fine: error callback ran fine.
Your url returns a 500 and a custom 500 error page. is there anyway to turn this off and try it again?