繁体   English   中英

codeigniter-通过选中复选框将多个项目添加到购物车中

[英]codeigniter - add multiple item into cart by checked checkbox jquery

我正在尝试根据已选中的复选框将多个商品添加到购物车中,让我们直接说清楚。

风景

<table width="100%" id="product-row">
                        <tr>
                            <td>ID  </td>
                            <td>DESCRIPTION</td>
                            <td style="width:200px">ACTION</td>
                        </tr>
                        <tr>

                            <?php
                                    $attr=array('id'=>'add-item');
                                    echo form_open('cart/add_piece',$attr);
                            ?>
                            <?php foreach($product->result_array() as $p) : ?>
                            <td>
                                <p>
                                    <?php echo $p['ITEMNO'];?>
                                </p>
                            </td>
                            <td>
                                <p>
                                    <?php echo $p['DESCRIPTION']?>
                                </p>
                            </td>
                            <td>
                                    <?php echo form_input(array('name' => 'quantity[]', 'value' => '1', 'maxlength' => '5', 'size' => '5','class' => 'quantity textbox', 'placeholder'=>'0')); ?>
                                    <input type ="hidden" name="description[]" value="<?php echo $p['DESCRIPTION']?>"></input>
                                    <input type="checkbox" value="<?php echo $p['ITEMNO'];?>" name="itemno[]">Ambil</input>
                            </td>
                        </tr>
                        <?php endforeach;?>
                    </table>
                    <input class="btn_pro_bypcs" type="image"   src="<?php echo base_url();?>assets/images/green-add.png" id="submit" alt="Add To Cart" width="70" height="30"/>
<?php echo form_close();?>

控制器:

function add_piece()
    {
        if($this->session->userdata('logged_in'))
        {
            if($this->item_model->validate_add_item_piece()== TRUE)
            {
                if($this->input->post('ajax') != 1)
                {
                    redirect('cart');
                }
                else
                {
                    echo "Item Added";
                }
            }
        }
        else
        {
            echo "<div style='background-color:red;'>Failed to add item!</div>";
        }

    }

该模型:

$itemno=$this->input->post('itemno');
        $quantity = $this->input->post('quantity');
        $desc=$this->input->post('description');
        foreach($itemno as $i)
        {
            for($i=0;$i< count($itemno);$i++)
            {
            $data= array(

                'id'    => $itemno[$i],
                'name'  => $desc[$i],
                'qty'   => $quantity[$i],
                'price' => 1

            );
            $this->cart->insert($data);
            }
            return TRUE;
        }

PHP工作正常,但问题是,如何使用jquery将商品添加到购物车中?

演示演示

这将达到目的。 实施循环外的逻辑

  $("#submit").click(function() {
      var cart = [];
      $("input[type='checkbox']").each(function() {
        if($(this).is(":checked")) {
          console.log("Insert inside an array & push : "+$(this).val());
          cart.push($(this).val());
        }
      });
      // your logic to process the cart array
    });

现在,您只需要遍历cart数组并构造html DOM项并将其添加到cart中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM