2013-08-06 70 views
-2

我試圖簡單地從jQuery $ .get()調用獲取響應,並將其存儲到變量中。事實證明,這比我想象的要困難得多。這裏是我的代碼:從javascript中的匿名函數修改變量

var response; 
    $.get(("action.php?action=addFolder&folderName=" + input), 
     function(data, status){ 
      response = data 
     } 
    ); 
return response; 

但是,響應總是未定義或爲空。我怎樣才能解決這個問題?

回答

5

這是因爲ajax是異步的。這意味着ajaxcall仍然在做它的事情,你已經在回覆'迴應'。

如果你需要'迴應'的東西(我有點asume),在ajaxcall的oncomplete做些什麼。您在get中使用的函數是觸發未完成的函數。

爲了澄清異步多爲那些誰不有點明白我的意思*:

創建變量「響應」。之後,阿賈克斯開始。 之後,您將其歸還。這個列表中最重要的事情是它在得到ajax STARTS後返回的 。如果ajax需要5秒鐘,則該變量將在5秒後具有該值。

* 這simplefied