使用codeigniter cart类中的ajax更新购物车项目

时间:2015-07-01 11:18:31

标签: jquery ajax codeigniter

**My View:**

<script>

    function qtyAdd(rowId){
        var Row = rowId;
            var counter = $('#TextBox'+Row).val();
            counter++ ;         
            $('#TextBox'+Row).val(counter);
    event.preventDefault(); 
        var id=$("#id").val();
        var qty=$('#TextBox'+Row).val();
    //alert(rowid);
    //alert(qty);
    dataString = "id=" + id;
       $.ajax({
                    type:"POST",
                    url: "<?php echo site_url(); ?>/home/update_cart",
                    data:dataString,
                    success:function(data){
                        $('.cart_content').html(data);
                    }
                })

    }
    function qtyMinus(rowId){
        var Row = rowId;
            var counter = $('#TextBox'+Row).val();
            counter -- ;    
            if (counter<=0) {
                $('#TextBox'+Row).val=0;
            }           
            else {$('#TextBox'+Row).val(counter);};
    }

</script>

<div class="col-sm-12 cart_content">
                             <div class=" item_scrool"  > 
<?php if(!$this->cart->contents())
    echo 'You don\'t have any items yet.';
else {


?>

<form method="post">
                    <table class="table table-striped">
                        <tbody>
                                <?php $i = 1; ?>
                                <?php foreach($this->cart->contents() as $items): ?>
                            <tr>
                                <input type="hidden" id="id" name="id" value="<?php echo $items['id']?>">
                                <td width="25%"><img src="<?php echo base_url(); ?>assets/images/biscites.jpg" ></td>
<!--                                <td width="25%"><img src="<?php //echo base_url(); ?>assets/products/<?php //echo $items['prod_image']; ?>" ></td>
-->                                <td width="70%"><?php echo $items['name']; ?>
                                          <div class="clearfix"></div>
                                          <input type="image" id='MinusButton<?php echo $i ?>' src="<?php echo base_url(); ?>assets/images/minus.jpg" style=" float:left;"  onClick="qtyMinus(<?php echo $i ?>)" />
                                          <input type="text" name="qty"  id="TextBox<?php echo $i ?>" value="<?php echo $items['qty']?>" class="qtyinput" />
                                          <input type="image" id='AddButton<?php echo $i ?>' src="<?php echo base_url(); ?>assets/images/plus.jpg" style=" float:left;" onClick="qtyAdd(<?php echo $i ?>)" />
                                          <div class="clearfix"></div>
                                          <h5>Rs. <?php echo $this->cart->format_number($items['subtotal']); ?></h5></td>
                                <td width="5%"><a href="<?php echo site_url(); ?>/home/empty_cart?itemid=<?php echo $items['rowid']?>" class="empty"><img src="<?php echo base_url(); ?>assets/images/close.png" ></a></td>
                          </tr>
                                  <?php $i++; ?>
                                    <?php endforeach; ?>
                          <tr>
                            <td></td>
                            <td><h5>Total Rs. <?php echo $this->cart->format_number($this->cart->total()); ?>.00</h5></td>
                            <td></td>
                          </tr>  


                      </tbody>
                  </table>
                  </form>
                  <?php 
                    } 
                  ?>
                      </div>
                              <div class="col-sm-6 bg-info">Shop for Rs. 985.00 more
                        and get free delivery !</div>
                              <div class="col-sm-6">
                        <button type="button" class="btn btn-success btn-block">CHECKOUT</button>
                      </div>
                            </div>

我的控制器:

function update_cart(){
    $this->load->library('ajax');
     $id=$this->input->post('id');
     $qty=$this->input->post('qty');
      $data['cart'] = $this->cart_model->validate_update_cart();
    $this->load->view('home/home_view',$data);  
}

我的模特:

    function validate_update_cart(){

        $this->db->select('*');
            $this->db->from('products');
            $this->db->where('prod_id',$this->input->post ('id'));
            $q = $this->db->get();
            $lab = $q->result_array();
            $cart = $this->cart->contents();
             foreach($cart as $items){

                if($this->input->post('id') == $items['id']  ){
                        $this->cart->update(array(
                        'rowid' => $items['rowid'],
                        'qty' => $items['qty']
                        ));     
                        $found = true;
                     }           
                }   

            return $this->cart->contents();

    }

我的问题是,我无法更新购物车项目,即数量和价格.Plz建议我如何解决这个问题。我想更新购物车与页面刷新。 或者提供一些其他方式如何更新购物车,不用刷新页面。

0 个答案:

没有答案