$(document).ready(function() {
$(".eliminar").click(function(e) {
e.preventDefault();
var id = $(this).attr('data-id');
//alert(id);
$(this).closest('.holder-cesta').remove();
$.post('./php/carro_compra/eliminar.php', {
Id:id
},function(a) {
if (a=='0') {
location.href="./cesta";
}
});
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="holder-cesta">
<h4>Product 1</h4>
<button class="eliminar" data-id="1">Delete</button>
</div>
<div class="holder-cesta">
<h4>Product 3</h4>
<button class="eliminar" data-id="3">Delete</button>
</div>
<div class="holder-cesta">
<h4>Product 2</h4>
<button class="eliminar" data-id="2">Delete</button>
</div>
我正在创建button
以删除添加的产品。
购物车中添加的每件商品都会有一个删除按钮。
所以我的问题是,如何通过点击删除id
来获取button
。
我做了这样的事情:
if (isset($_SESSION['carrito'])) {
//Array con datos carrito.
$data = $_SESSION['carrito'];
$total = 0;
for ($i=0; $i<count($data); $i++) {
<div class="holder-cesta">
<h4><?php echo $data[$i]['Titulo']; ?></h4>
<button class="eliminar" data-id="<?php echo $data[$i]['Id']; ?>"><i class="fa fa-trash-o" aria-hidden="true"></i></button>
</div>
<?php
}
} else {
echo "0 articulos";
} unset($arreglo);
?>
我的jQuery脚本如下所示:
$(document).ready(function() {
//Button click function.
$(".eliminar").click(function(e) {
e.preventDefault();
//Get the id attribut.
var id = $(this).attr('data-id');
//alert(id); (The alert work perfect).
//Remove the parent holder.
$(this).closest('.holder-cesta').remove();
//Control AJAX
$.post('http://domain.com/php/carro_compra/eliminar.php', {
Id:id
},function(a) {
if (a=='0') {
location.href="./cesta";
}
});
});
});
但是我的ID
中没有eliminar.php
,如果我做这样的事情,它总会被忽略:
if ($arreglo[$i]['Id'] != $_POST['Id']) {
}
所以$_POST['Id']
,AJAX
没有得到任何结果。如果我放了id
手册,它就可以了。
这里我包含了eliminar.php
<?php
//Session start
session_start();
//Get shoping cart data.
$arreglo = $_SESSION['carrito'];
//Reset.
$arr[] ='';
for ($i=0; $i<count($arreglo); $i++) {
if ($arreglo[$i]['Id']!= $_POST['Id']) {
$datosnuevos = ['Id' => $arreglo[$i]['Id'], 'Titulo' =>$arreglo[$i]['Titulo'], 'Precio' => $arreglo[$i]['Precio'], 'Icon' => $arreglo[$i]['Icon'], 'Cantidad' => $arreglo[$i]['Cantidad'] ];
$arr[] = $datosnuevos;
}
}
if (isset($arr)) {
$_SESSION['carrito'] = $arr;
$data = $_SESSION['carrito'];
$value_carrito = count($data);
$_SESSION['compras'] = $value_carrito;
echo "<script>window.location.reload();</script>";
} else {
unset($_SESSION['carrito']);
unset($_SESSION['compras']);
echo "0";
}
?>