【发布时间】:2018-12-31 08:30:12
【问题描述】:
我想使用 Ajax 从购物车中删除,我添加没有问题,但是当我有很多项目并且可能需要一一删除时,如何在不刷新页面的情况下删除,我从删除函数传递 html在控制器中查看刀片,所以当我第一次在页面上删除但删除一个项目后无法删除更多
<script>
$(function(){
$('.remove_item').on("click", function () {
var id = $(this).data('id');
$.ajax({
type: 'DELETE',
url: "cart/"+ id,
data: {'_token': $('input[name=_token]').val()},
success: function (data) {
$('#cart_product').html(data);
}
});
});
});
</script>
在控制器中删除
public function destroy($id)
{
Cart::remove($id);
$products = Cart::content();
foreach($products as $Product){
echo '<div class="OrderItem_root styles_base styles_spacing-base">
<div class="OrderItem_quantity styles_just-right styles_base
styles_spacing-base">'.$Product->qty.'</div>
<div class="OrderItem_container">
<div class="OrderItem_category"></div>
<div class="OrderItem_itemHeader">
<div id="titletest" class="OrderItem_name styles_just-right styles_base styles_spacing-base">'.$Product->name.'</div>
<div id="cartprice" class="OrderItem_total">$'.$Product->price*$Product->qty.'</div>
<input id="mycartprice" type="text" name="mycartprice" value="'.$Product->price.'" hidden="">
</div>
<div>
</div>
<div>
<button class="remove_item OrderItem_action Button_root" data-id="'.$Product->rowId.'" data-price="'.$Product->price*$Product->qty.'" data-qty="'.$Product->qty.'" type="submit">Remove</button>
</div>
</div>
</div>';
}
}
【问题讨论】:
-
在 ajax 调用中使用正确的错误处理模式
-
我没有关于如何在控制器中使用按钮的所有错误,因此在第一次删除控制器后,即使它具有相同的 ID,也可以使用新的删除按钮将 json html 传递给 ajax或类但不能使用它,因为我在执行 javascript 函数之前已经加载了刀片
标签: javascript php jquery html laravel