我是新來的ajax和jquery,所以請原諒初學者的問題。我對使用AJAX調用和返回JSON對象的過程感到困惑,並且讓您的程序的其餘部分可以使用這些數據。觸發事件和ajax
如果我有這樣的功能:
function treeData(){
$.getJSON("/recipe/recipelist/", function(data) {
// sorts array by title, alphabetically
data.sort(function(a, b){
return b.title < a.title ? 1 : b.title > a.title ? -1 : 0;
});
return data;
});
}
,我嘗試訪問該數據像這樣,
var obj = treeData();
我得到一個錯誤說obj是不確定的。基本上,我不明白爲什麼這不起作用。我假設它與我的退貨聲明有關。我希望能夠構建另一個「刪除」函數,該函數在被調用時觸發.getJSON請求並重繪我的數據庫條目列表。
在此先感謝。
我不知道延期甚至存在。謝謝。你會建議使用這種方法通過其他答案中提供的標準回調方法嗎? – bento 2012-04-22 22:26:10
那麼在你的情況下,我認爲兩者都是等價的,但分開關注(*獲得*數據和*工作與*數據)是一個很好的想法。另外,Deferred功能非常強大,回調有些「有限」。你可以看看這個瞭解更多http://danheberden.com/presentations/deferreds-putting-laziness-to-work/ :) – pomeh 2012-04-22 22:42:06
@bento你也可以檢查那些鏈接http://www.erichynds.com/jquery /使用deferreds-in-jquery /和http://www.bennadel.com/blog/2212-Using-jQuery-s-Deferred-Functionality-For-Asynchronous-Configuration.htm – pomeh 2012-04-22 22:52:31