Добавьте кнопку увеличения и уменьшения количества Ajax в мини-корзину в Magento 2


Я хочу реализовать функции кнопок увеличения и уменьшения количества Ajax для товаров в корзине на миникарте. Я не нашел ни одной статьи или какого-либо модуля для достижения этой цели. по мере увеличения количества (+) и уменьшения(-) внутри мини-корзины цена товара и общая сумма должны изменяться без нажатия кнопки обновить.Может ли кто-нибудь помочь мне с этим?

Author: trilok kumar, 2018-10-20

2 answers

Мы можем упростить задачу, добавив ссылки +1 и -1, чтобы изменить количество каждого товара. Мы сделаем это с помощью очень простого JavaScript, который принимает текущее значение и корректирует его. Как только это будет сделано, мы отправим форму с помощью JavaScript, чтобы уменьшить усилия клиентов.

<?php
  <input name="cart[<?php echo $_item->getId() ?>][qty]" value="<?php echo $this->getQty() ?>" size="4" title="<?php echo $this->__('Qty') ?>" class="input-text qty" maxlength="12" id="cart[<?php echo $_item->getId() ?>][qty]"/>
?>

App/design/frontend/[interface_name]/[theme_name]/template/checkout/cart/item/default.phtml

Увеличение на единицу:

<?php
  <a onclick="changeItemQuantity( <?php echo $_item->getId() ?>, 1 ); return false;" href="#"><img alt="add-arw" src="<?php echo $this->getSkinUrl('images/add-arw.png') ?>"></a>
?>

Уменьшиться на один:

<?php
  <a onclick="changeItemQuantity( <?php echo $_item->getId() ?>, -1 ); return false;" href="#"><img alt="add-arw" src="<?php echo $this->getSkinUrl('images/add-arw.png') ?>"></a>
?>

Теперь функция JavaScript. Мы не хотим, чтобы он дублировался для каждого элемента, поэтому вы можете либо поместить его в файл JavaScript вашей темы, либо просто под таблицей в родительском шаблоне -

Приложение/дизайн/интерфейс/[имя интерфейса]/[имя темы]/шаблон/оформление заказа/корзина.phtml

function changeItemQuantity( id , num ) {
    var qty_id = "cart[" + id + "][qty]";
    var currentVal = parseInt( $(qty_id).value );
    if ( currentVal != NaN )
    {
        $(qty_id).value = currentVal + num;
        $("products-table-basket").submit();
    }
}

enter image description here

Ссылки

  1. https://tomrobertshaw.net/2010/08/add-increase-and-decrease-quantity-buttons-to-items-in-magento-cart/
  2. https://www.magearray.com/enhanced-mini-cart.html
  3. https://community.magento.com/t5/Magento-2-x-Programming/Update-Cart-automatically-Using-Increment-and-decrement-Button/td-p/104958
 1
Author: Aditya Shah, 2018-10-20 12:07:40

Вы можете скачать расширение и установить его для кнопки увеличения и уменьшения количества мини-карт Ajax.

Https://github.com/kirtinariya1/MinicartAjaxQtyIncrementDecrement

 1
Author: Kirti Nariya, 2019-04-14 06:03:31