Javascript 在Codeigniter中使用ajax更新购物车后,如何打印结果
这是我的控制器代码:Javascript 在Codeigniter中使用ajax更新购物车后,如何打印结果,javascript,php,ajax,codeigniter,Javascript,Php,Ajax,Codeigniter,这是我的控制器代码: function customer_cart_update(){ $count_cart = count($this->cart->contents()); for($i=0 ;$i <=$count_cart ;$i++){ $data_cart = array( 'rowid' => $this->input->post('rowid'.$
function customer_cart_update(){
$count_cart = count($this->cart->contents());
for($i=0 ;$i <=$count_cart ;$i++){
$data_cart = array(
'rowid' => $this->input->post('rowid'.$i),
'qty' => $this->input->post('qty'.$i),
);
}
//print_r($data);die;
$data = $this->cart->update($data_cart);
//Either print value or send value to database
echo json_encode($data);
}
功能客户车更新(){
$count_cart=count($this->cart->contents());
对于($i=0;$i$this->input->post('rowid'.$i),
“数量”=>$this->input->post('qty'.$i),
);
}
//打印(数据);死亡
$data=$this->cart->update($data\u cart);
//打印值或将值发送到数据库
echo json_编码($data);
}
Ajax代码
$(".submit").click(function(event) {
event.preventDefault();
var pro_rowid = $("input#Rowid").val();
jQuery.ajax({
type: "POST",
url: "<?php echo base_url(); ?>" + "admin_customer/customer_cart_update",
dataType: 'json',
data: {'rowid': pro_rowid},
success: function(res) {
//alert('success !');
$("#Qty").html();
$("#Result").html();
}
});
});
$(“.submit”)。单击(函数(事件){
event.preventDefault();
var pro#u rowid=$(“输入#rowid”).val();
jQuery.ajax({
类型:“POST”,
url:“+”管理员\客户/客户\购物车\更新”,
数据类型:“json”,
数据:{'rowid':pro_rowid},
成功:功能(res){
//警惕(“成功!”);
$(“#数量”).html();
$(“#结果”).html();
}
});
});
和我的视图代码
<?php
$a=1;
foreach ($this->cart->contents() as $cart_item){?>
<li>
<ul class="Sub-Cart">
<li><a href=""><img src="<?php echo base_url()?>upload/<?php echo $cart_item['options']['Image'];?>"/></a></li>
<li><a href=""><?php echo $cart_item['name'];?> <?php echo $cart_item['options']['Size'];?> <?php echo $cart_item['options']['Color'];?></a> <a href="<?php echo base_url()?>admin_customer/customer_del_cart/<?php echo $cart_item['rowid'];?>"><i class="fa fa-trash-o" title="Xoa"></i></a></li>
<input type="hidden" name='rowid<?php echo $a;?>' id='Rowid' value='<?php echo $cart_item['rowid'] ;?>' />
<li><?php echo $cart_item['price'];?> </li>
<li>
<input id="Qty" type="text" name="qty<?php echo $a;?>" value="<?php echo $cart_item['qty'];?>" min="1" />
</li>
<li id="Result"><?php echo $cart_item['subtotal'];?></li/>
</ul>
</li>
<?php $a++;}?>
我无法将“数量”更新到购物车的内容中,有什么问题吗?更新后如何显示价格和数量的总和
提前感谢这里有很多错误。您的购物车项目是一个列表,但是ajax没有考虑到这一点,并且ajax没有将数量发送到服务器。ajax应该以某种方式将数据发送到服务器,以便在服务器上获取数据 使用选择器输入#Rowid是错误的。我无法在代码中看到带有#Rowid的输入,但如果定义了#Rowid,则不需要输入 您正在视图中迭代一个循环,但每个迭代都有相同的id。这些id在DOM中必须是唯一的,否则它将中断 我建议您使用一个数组输入名称,这样post应该计算出它并发布一个值数组。
祝你好运 您没有在元素值
Qty
上分配响应。json响应是什么样子的?您在哪里设置$this->car->contents()
的值?这就是包含“qty”的内容,但我没有看到代码中声明的方法。@bos570在我的购物车中,已经有一些值,如:id、qty、price。。。所以我用count()来计算内容。#Roljhon那么你能给我更多的信息吗?我是一个新的设计师,所以这个问题对我来说很难^^有人能给我一个关于这块重石头的明确答案吗???请帮助我=