jQuery ajax成功函数里面的成功函数?

时间:2012-09-11 16:44:33

标签: javascript jquery

我试图在函数的成功函数中调用ajax函数。 这是我的代码:

success: function () {
    jQuery.ajax({
        type: "POST",
        url: "script.php?subtype=3",
        data: "page=1",
        beforeSend: function () {
            jQuery(".data").animate({opacity: 0.2}, 150);
            jQuery(".outer-data").css({'background': 'url("ajax-loader.gif") no-repeat scroll 50% 50%'});
        },
        success: function (msg) {
            jQuery("#container_cat").ajaxComplete(function (event, request, settings) {
                jQuery(".outer-data").css({'background': 'none'});
                jQuery("#container_cat").html(msg);
            });
        }
        // ...
    });
}

即使我从

获取Firebug控制台中的响应
jQuery("#container_cat").html(msg);

我在文档中没有得到任何输出。

我在这里缺少什么?

2 个答案:

答案 0 :(得分:2)

success: function () {
    jQuery.ajax({
        type: "POST",
        url: "script.php?subtype=3",
        data: "page=1",
        beforeSend: function () {
            jQuery(".data").animate({opacity: 0.2}, 150);
            jQuery(".outer-data").css({'background': 'url("ajax-loader.gif") no-repeat scroll 50% 50%'});
        },
        success: function (msg) {
            jQuery(".outer-data").css({'background': 'none'});
            jQuery("#container_cat").html(msg);
        }
        // ...
    });
}

答案 1 :(得分:2)

似乎问题是你在success函数中调用了ajaxComplete()函数。您不需要在成功函数内使用ajaxComplete,因为只有在ajax请求完成并成功时才会执行成功函数。所以没有意义在其中使用ajaxComplete。 供参考:ajaxComplete docs 您可以在成功函数之前使用ajaxComplete。