2011-05-11 175 views
3

我需要創建一個變量併爲該變量賦值以便稍後使用。爲了節省複雜性並保持簡單,我已經刪除了也是var item2的其他部分的細節。在這個例子中的變量是mySeriesjQuery將變量從一個函數傳遞到另一個函數

var mySeries; 

$.getJSON("/_scripts/proxy.php", jsonObj, function(item) 
{ 
//Stuff happens here 

//NEED TO ASSIGN VALUE TO mySeries HERE: 
mySeries = item[0].series_id; 

//Stuff happens here 
}); 

//NEED TO USER mySeries VALUE HERE BUT IT IS NOT DEFINED 
var item2 = mySeries; 

回答

3

使用Ajax,你需要使用回調,因爲AJAX是asynchronous

$.getJSON("/_scripts/proxy.php", jsonObj, function(item) 
{ 
    var mySeries; 
    //Stuff happens here 

    //NEED TO ASSIGN VALUE TO mySeries HERE: 
    mySeries = item[0].series_id; 
    save_series(mySeries) 
    //Stuff happens here 
}); 

function save_series(s){ 

    var item2 = mySeries; 

    //...etc 
} 
0

mySeries獲得分配的json的請求完成後,您ITEM2獲取的之前分配它完成。

0

是的,我認爲你需要一個item2的setter,因爲它是在函數後面發生的,但是因爲它是異步的,所以它不會有值直到它返回。如果您需要這種功能,您也可以使用.ajax()並將函數設置爲同步。

相關問題