使用产品ID值从输入中删除购物车产品

时间:2017-09-11 18:21:04

标签: javascript php jquery ajax magento-1.9

我想与input type ="hidden"合作,以便我可以进行检查。我有一个滑块显示一个类别的产品,通过两个Ajax请求我添加并通过点击购买和删除按钮删除它们,但是这个问题没有那么多相关性。

幻灯片上只能购买一个此类产品,但如果添加其中一个产品并更新页面并再次点击购买按钮,则会添加另一个产品,这不应该发生。我想确保在页面更新中,如果已经添加了其中一个产品,则会将其删除,但我不知道在哪里完成它。我想我应该使用{{1}通过它,我可以保存添加产品的id的值,但我不知道如何进行此验证。

下面我将添加按钮的代码和我已经做出的输入,并且正确,除了Ajax请购单的代码。如有必要,我添加我使用的控制器的代码。

按钮和输入代码:

input type ="hidden"

Ajax申请代码:

<button style="margin-left: 11%;" type="button"  class="button btn-cart" onclick="addCartao('<?php echo $_product->getId(); ?>')" name="cartaoMensagem<?php echo $_product->getId(); ?>" id="cartaoMensagem<?php echo $_product->getId(); ?>"><span><span><?php echo $this->__('Add to Cart') ?></span></span></button>
<button style="display: none; margin-left: 11%;" type="button" id="cartaoMensagemRemover<?php echo $_product->getId(); ?>" title="Remover" class="button btn-cart" onclick="removeCartaotoCart('<?php echo $_product->getId(); ?>')" name="cartaoMensagem<?php echo $_product->getId(); ?>"><span><span>Remove</span></span></button>
<input type="hidden" name="cartao_adicionado" id="cartao_adicionado" value="" />

1 个答案:

答案 0 :(得分:0)

你应该做的是制作一个小的PHP代码来进行验证,其中包含这些产品的SKU,如果它们在购物车中,则为布尔变量赋值并将其插入{{1}在jQuery中使用此值。

用于验证的Php代码:

input

更新了Ajax请求代码:

<?php
    $array_de_skus_de_cartoes = array(45,60,80,90,102,103,104,105); //SKUs of products
    $isCartaoAdicionado = 0;
    $cart = Mage::getModel('checkout/cart')->getQuote();
    foreach ($cart->getAllItems() as $item) {

        foreach ($array_de_skus_de_cartoes as $sku) {
            if($sku == $item->getProduct()->getSku()) {
                $isCartaoAdicionado = 1;
                $cartao_id = Mage::getModel("catalog/product")->getIdBySku($sku);
            }
        }
    }

    if($isCartaoAdicionado == 1) {
?>
        <input type="hidden" name="cartao_adicionado" id="cartao_adicionado" value="1" />
        <input type="hidden" name="cartao_adicionado_product_id" id="cartao_adicionado_product_id"" value="<?php echo $cartao_id ?>" />
<?php
    }
    else {
?>
        <input type="hidden" name="cartao_adicionado" id="cartao_adicionado" value="0" />
        <input type="hidden" name="cartao_adicionado_product_id" id="cartao_adicionado_product_id"" value="" />
<?php
    }
?>