我希望有一个按钮可以执行2个功能而无需刷新或访问其他页面。 1.首先点击添加到购物车按钮,它会将产品添加到购物车中,一旦产品添加到购物车,按钮应该2.更改为从购物车中删除当点击从购物车中删除按钮时,它应该从购物车中删除该商品,然后再次将按钮再次更改回添加到购物车。
现在我正在使用非常简单的onclick事件按钮
<button class="btn btn-sm btn-inverse btn-embossed" onclick="ajaxSubmit('/add/product/<?php echo $productId; ?>/"><span><?php echo $this->__('Add to Cart') ?></span></button>
可以使用以下网址删除产品
/remove/product/<?php echo $productId ?>/
我已经尝试过其他论坛的几个选项,但我无法实现。
答案 0 :(得分:1)
我建议你从onclick事件中移动你的ajax调用,这样你就不需要复制长代码了。第二个为jQuery访问添加诸如当前操作和id的参数到data
。
$('.product-btn').click(function(){
if($(this).attr('data-action')=="add"){
ajaxSubmit('/add/product/'+$(this).attr('data-id')+'/');
$(this).attr('data-action','remove');
$(this).children('span').html('Remove from cart');
}else{
ajaxSubmit('/remove/product/'+$(this).attr('data-id')+'/');
$(this).attr('data-action','add');
$(this).children('span').html('Add to cart');
}
});
&#13;
<button class="btn btn-sm btn-inverse btn-embossed product-btn" data-action="add" data-id="<?php echo $productId; ?>"><span><?php echo $this->__('Add to Cart') ?></span></button>
&#13;