[英]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.