2014-09-01 63 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