2014-09-01 64 views
0

我想創建一個ajax函數來發布我使用另一個Ajax函數加載的數據。我已經發現使用回調函數,但是如何將數據從一個函數傳遞到另一個函數。我已經試過這樣:在一個函數中使用2個Ajax調用

getData(function{ 
$.ajax({ 
    do stuff..., 
    data: dataArray, 
    do stuff... 
)} 
}); 

function getData(callback){ 
$.ajax({ 
    do stuff..., 
    data: dataArray, 
    do stuff..., 
    success: function(data){ 
    dataArray = fill array with stuff; 
    callback(); 
    } 
)} 
}; 

看起來像數組是不可用的回調函數...

這是我應該考慮的解決方案,或有另一種方式來等待首先ajax呼叫完成?

+0

這是不完全清楚你在做什麼,但你有語法錯誤,所以這段代碼甚至不會編譯。 – Quentin 2014-09-02 10:51:36

+0

請嘗試編寫一個簡化的測試用例來演示您的問題。儘量避免使用全局變量或重用變量名稱。 – Quentin 2014-09-02 10:52:04

+0

不,這段代碼不能編譯,它是爲了演示我的流程是如何構建的。 – NCS 2014-09-02 11:02:30

回答

-1

您的代碼似乎很複雜,所以我寫一個新的。你可以通過查看我的代碼來創建你自己的。

試試這個;

$.ajax({ 
type: 'get', 
url: 'http://geturl.com', 
success: postdata(dataToPost)}); 

function postdata(dataToPost){ 
$.ajax({ 
type:'post', 
url: 'http://posturl.com', 
data: datatoPost 
}); 
+0

如果您添加缺少的字符以便編譯,那將無法工作。 'success'需要是一個函數,而不是函數的'undefined'返回值。 – Quentin 2014-09-02 10:57:55