-3

我知道以前有人问过这个问题。我在这里多次阅读了这个问题的答案:如何从异步调用中返回响应?. 我意识到我需要创建一个回调函数来返回结果。我不确定如何按照此处的说明执行此操作-如何从异步调用返回响应?-但也将参数传递给函数(optionSelectionArray)。

function simpleWithAttrPrice(optionSelectionArray){
    var product_id= <?=$product_id ?>;


        $j.ajax({
            type: "POST",
            url: "/ajax_calls/childrenToJs.php",
            data: { 'productID': product_id, 'optionSelectionArray' : optionSelectionArray} 
            }).done(function(data) {
                return price;
            }); 


}
4

1 回答 1

3

您应该使用回调函数来调用它(.done(callback)将调用callback),而不是像现在这样返回:

function simpleWithAttrPrice(optionSelectionArray, callback) {
    var product_id = <?= $product_id ?>;
    $j.ajax({
        type: "POST",
        url: "/ajax_calls/childrenToJs.php",
        data: { 'productID': product_id, 'optionSelectionArray' : optionSelectionArray} 
    }).done(callback);
}


// Usage
simpleWithAttrPrice(options, function(data) {
    // Here you have you response
    console.log(data);
});
于 2013-06-10T18:39:03.050 回答