У меня есть эта функция для извлечения данных json из запроса yql
function link(b){
var jsonURI = "http://query.yahooapis.com/v1/public/yql?q="+encodeURIComponent("select href,alt,content from html where url='"+b+"' and xpath='//a[@id=\"download\"] |//img[@class=\"dvLinkOverlayFill\"] |//meta[@name=\"title\"]'")+"&format=json&diagnostics=true&_maxage=86400&callback=callback&jsoncallback=?";
jQuery.ajaxSetup({cache: true});
jQuery.getJSON(jsonURI,callback);
}
Что мне нужно, это проверить, являются ли данные нулевыми или нет перед передачей в обратный вызов, если он нулевой, он снова запускает функцию link (), если нет, то я пытался
if (jQuery.query.results == null){link(b);}
но не повезло, какой-нибудь совет или руководство?
РЕДАКТИРОВАТЬ: Получил работу, частично, с помощью
if (o.query.results == null) { link(b); }
внутри функции обратного вызова
callback(o){
if (o.query.results == null) { link(b); }
Однако я не могу передать «b» из функции link в функцию callback, это единственное, что осталось для этого, что-то вроде callback (o, b), который можно передать здесь jQuery .getJSON (jsonURI, обратный вызов);
так как этот отправляет «о», как заставить его отправить «б», а? что-то вроде
jQuery.getJSON (jsonURI, обратный вызов (о, б));