@wanderbit

Как передавать параметр товара при клике на кнопку добавления в корзину?

Как передавать параметр товара при клике на кнопку добавления в корзину? кнопка добавления товара на ходится в шаблоне вывода категории category.tpl 0.5 кг=1шт 1кг=2шт и т.д
<div class="add">
                                    <select>
                                        <option>0.5 кг</option>
                                        <option>1 кг</option>
                                        <option>1.5 кг</option>
                                        <option>2 кг</option>
                                        <option>2.5 кг</option>
                                        <option>3 кг</option>
                                        <option>3.5 кг</option>
                                        <option>4 кг</option>
                                    </select>
                                     <button type="button" onclick="cart.add('<?php echo $product['product_id']; ?>');">
                                        <span class="price" >
                                            <?php echo $product['price']; ?>
                                        </span>
                                    </button>
                                </div>


f2c08baf284c4c5dba0413eda89c5764.jpg
  • Вопрос задан
  • 197 просмотров
Пригласить эксперта
Ответы на вопрос 1
@xuxubla
Не совсем понятен вопрос, да и в opencart не силен. Тем не менее...
Функция допускает наличие второго аргумента (количество):
onclick="cart.add('<?php echo $product['product_id']; ?>', $('select').val());"
/*
тут важно получать значение нужного селекта
*/

Если же вы собираетесь передавать какой-то другой параметр, то нужно найти эту функцию и перепелить чуть-чуть.
'add': function(product_id, quantity) {
  var dopparam = $('тут что-то получаем').val();
  $.ajax({
    url: 'index.php?route=checkout/cart/add',
    type: 'post',
    data: 'product_id=' + product_id + '&quantity=' + (typeof(quantity) != 'undefined' ? quantity : 1) + '&dopparam=' + dopparam,
    dataType: 'json',
    beforeSend: function() {
      $('#cart > button').button('loading');
    },
    success: function(json) {}
}


Только потом не забудьте объяснить корзине, что ей с этим дополнительным параметром делать.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы