使用服务器端脚本末尾的ajax将脚本重新加载到div中

时间:2011-07-12 12:26:23

标签: php ajax

我有一个购物车,每个页面顶部的minicart.php添加了带有ajax加载(POST)和更新购物车会话的产品。

在一个页面上,代码下方的另一个脚本cart_list.php过滤了有效/无效促销的购物车金额。如果它找到无效的促销,它将从购物车会话中删除它。

我在加载cart_list.php时重新加载minicart.php,但是它得到了更改。如果它是一个竞赛问题,我也尝试添加超时。

("#cart").load("/cart_list.php", {amountchange:amount,key:key}, function() {
        setTimeout(function() {
            $("#minicart").load("/minicart.php", {calledsolo:"true"});
            floatingBox();
        }, 500);
    });

如果我将cart_list.php放在mini_cart.php上面,它可以运行但是我不想这样做,我也想了解为什么mini_cart.php无论如何应该重新加载。

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

$("#minicart").load("/minicart.php", {calledsolo:"true"});

此调用不会等到它完成。所以在上述ajax调用完成之前调用了floatingBox();。尝试以下:

("#cart").load("/cart_list.php", {amountchange:amount,key:key}, function() {
            $("#minicart").load("/minicart.php", {calledsolo:"true"}, function(){
                floatingBox();
            });
    });