我有這個功能來檢索YQL查詢JSON數據如何在傳遞之前檢查json結果?
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);
}
我要的是檢查,如果數據爲空或不是傳遞到回調之前,如果其爲null,則再次運行該鏈接( )功能,如果不是傳中,我曾嘗試
if (jQuery.query.results == null){link(b);}
,但沒有運氣,任何建議或指導?
編輯:得到它的工作,它的一部分,通過使用
if (o.query.results == null) { link(b); }
回調函數
callback(o){
if (o.query.results == null) { link(b); }
裏面,但是我不能從鏈接功能將通過「B」回調函數,這是唯一的工作,像回調(o,b),可以在這裏傳遞jQuery.getJSON(jsonURI,回調); 因爲這一個發送「o」,如何讓它發送「b」以及?像 jQuery.getJSON(jsonURI,callback(o,b));
你是不是想打電話之前檢查從YQL JSON響應的結果你link()函數獲取YQL響應? – Lance 2011-01-20 18:37:58
不,我想檢查結果後的迴應,如果沒有結果(null),然後再試一次函數,直到有結果(鏈接(b)) – MikeJ 2011-01-20 18:50:55