在jQuery AJAX成功之后刷新回显的PHP变量?

时间:2010-05-08 11:51:47

标签: php ajax codeigniter

我在Codeigniter中有一个购物车,其中使用(jQuery)Ajax将产品添加到购物车中。在每个页面的标题中,它使用

显示购物车中的内容数量
<?php echo $this->cart->total_items(); ?>

当产品添加到购物车时,如何更新/刷新此变量,因为我使用AJAX将产品添加到购物车,因此在添加产品时不会重新加载页面。如果我必须重新加载页面以从服务器获取新的总项目数,那么使用AJAX做异步的东西似乎毫无意义。

非常感谢。

4 个答案:

答案 0 :(得分:1)

您应该可以通过JavaScript轻松解决包含购物卡项目计数的元素来实现此目的,所以:

<span id="total_items"><?php echo $this->cart->total_items(); ?></span>

然后,作为您执行的AJAX函数的一部分,让响应包含总项的修订值,然后让您的函数用该值替换此span的内容。

答案 1 :(得分:0)

据我了解,您需要动态更新文章数量吗?

您可以使用jQuery PeriodicalUpdater每隔一段时间更新一次该号码(将其指向仅返回当前号码的脚本,ofc)。

答案 2 :(得分:0)

在这种情况下不要考虑PHP - 它完全无关紧要。您需要做的是修改该元素客户端的内容。所以如果你有:

<div id="total_items"><?php /* ... */ ?></div>

然后在您的AJAX成功处理程序中,您应该执行以下操作:

$('#total_items').html('new item count');

答案 3 :(得分:0)

首先,您可以在进行jQuery调用时根据需要更新页面的多个部分。从通话中返回的数据格式是什么?假设您正在返回JSON,那么JSON字符串应该包含总数。然后在AJAX调用的回调中,您只需更新总计数。