第二个AJAX调用数据未定义

时间:2015-05-08 13:20:17

标签: jquery ajax

我有2个ajax JSON调用,第二个URL是从第一个传递的变量nextURL

第二个ajax函数使用Alert(nextURL)注册NextURL变量,但我没有任何数据。错误控制台指出$('#gameBoxleft').html(data.post.title);数据未定义。

我不确定第二次ajax调用是否有问题?

// -------------- MAIN AJAX CALL FUNCTION  --------------
function call_ajax(url, elem) {

    $.ajax({
        url: url,
        method: "GET",
        data: {json: 1},
        dataType: "JSON"
    })


    // -------------- FUNCTIONS FOR AFTER AJAX DONE --------------
    .done(function (data) {

        // Append the box
        appendBox(elem);

        // LOAD GAMEBOX JSON DATA

        $("#game-name").html(data.post.title);
        $("#game-reels").html(data.post.custom_fields.reels);
        $("#game-paylines").html(data.post.custom_fields.paylines);
        $("#game-minBet").html(data.post.custom_fields.min_bet);
        $("#game-maxBet").html(data.post.custom_fields.max_bet);
        $("#game-jackpot").html(data.post.custom_fields.jackpot);
        $("#game-info").html(data.post.custom_fields.game_info);


    var nextURL = (data.previous_url) + "?json=1";
            var prevURL = (data.next_url);

          processTwo(nextURL);

    });
}


// -------------- NEXT OBJEXT AJAX CALL FUNCTION  --------------
function processTwo(nextURL) {

alert(nextURL);
            $.ajax({
        url: 'nextURL',
        method: "GET",
        data: {json: 1},
        dataType: "JSON"
    })

            .done(function() {

          $('#gameBoxleft').html(data.post.title);
    });
}

4 个答案:

答案 0 :(得分:1)

您在nextURL内提到' ',因为它应该是您从调用函数发送的参数,如下所示:

function processTwo(nextURL) {
    alert(nextURL);
    $.ajax({
        url: nextURL, //This needs to be changed
        method: "GET",
        data: {json: 1},
        dataType: "JSON"
    })
    .done(function() {
         $('#gameBoxleft').html(data.post.title);
    });
}

答案 1 :(得分:0)

我认为你应该通过:

url: nextURL,

而不是:

url: 'nextURL',

答案 2 :(得分:0)

在你的第二个ajax中你传递的是一个可变的网址:

此变量为:nextURL

从变量名称中删除配额标记:

$.ajax({
    url: nextURL, //remove quota marks.
    method: "GET",
    data: {json: 1},
    dataType: "JSON"
})

在这种情况下,变量的值将作为URL,否则url: 'nextURL'中的变量内的配额标记,URL将被视为nextURL,而不是URL。而你没有处理错误,所以它不会给出任何错误。

您可以在浏览器控制台中查看错误。

答案 3 :(得分:0)

面对掌心......

.done(函数(数据)会有所帮助!