Подскажите как сделать кнопки + и - с выбором количества товара, рядом с кнопкой купить. В разделе категории и в самом товаре? Так же как сделано в шаблоне Shop Universal. http://shopuniversal.pusku.com/index.php?route=common/home
Добавил скрипт в файле catalog\view\theme\default\template\product\category.tpl Код: <script type="text/javascript"> function addQtyToCart(product_id) { var qty = $('#qnty_' + product_id).val(); if ((parseFloat(qty) != parseInt(qty)) || isNaN(qty)) { qty = 1; } addToCart(product_id, qty); } </script> и код поля для ввода количества (без плюса и минуса): Код: <span><input type = 'text' id = 'qnty_<?php echo $product['product_id']; ?>' name="qnty_<?php echo $product['product_id']; ?>" size="2" value="1"></span> код кнопки добавления в корзину: Код: <a onclick="addQtyToCart('<?php echo $product['product_id']; ?>');" class="button"><span><?php echo $button_cart; ?></span></a>
Для товара достаточно добавить сами кнопки + и - и навесить на них js обработчик, который будет по клику на соответствующую кнопку менять значение в поле количества. Код: $(document).on('click', '.qt-button-decrease', function () { var $input = $('input[name^="quantity"]', $(this).parent()); var count = parseInt($input.val()) - 1; count = count < 1 ? 1 : count; $input.val(count); $input.change(); return false; }); $(document).on('click', '.qt-button-increase', function () { var $input = $('input[name^="quantity"]', $(this).parent()); $input.val(parseInt($input.val()) + 1); $input.change(); return false; }); Выражение для переменной $input, воможно, придёться немного подправить, зависит от шаблона. Для категории нужно будет ещё добавить поле количества и немного изменить код, который вписан в кнопку добавления в корзину. Там дожно быть: Код: addToCart('<?php echo $product['product_id']; ?>'); Заменить на Код: addToCart('<?php echo $product['product_id']; ?>, $('input[name^="quantity"]', $(this).parent().parent())'); Точный код поиска поля количества, опять же, зависит от шаблона.
Спасибо поле появилось, а вот как + и - реализовать кто нибудь знает ? --- Добавлено, 19 сен 2013 ---
Код: <span> <span class="qt-button-decrease">-</span> <input type = 'text' id = 'qnty_<?php echo $product['product_id']; ?>' name="qnty_<?php echo $product['product_id']; ?>" size="2" value="1"> <input type = 'hidden' id = 'product_id-<?php echo $product['product_id']; ?>' name="product_id-<?php echo $product['product_id']; ?>" value="<?php echo $product['product_id']; ?>"> <span class="qt-button-increase">+</span> </span> И мой скрипт тогда нужно немного подправить под ваше поле: Код: $(document).on('click', '.qt-button-decrease', function () { var product_id = $('input[name^="product_id"]', $(this).parent()); var $input = $('input[name="qnty_'+product_id+'"]'); var count = parseInt($input.val()) - 1; count = count < 1 ? 1 : count; $input.val(count); $input.change(); return false; }); $(document).on('click', '.qt-button-increase', function () { var product_id = $('input[name^="product_id"]', $(this).parent()); var $input = $('input[name="qnty_'+product_id+'"]'); $input.val(parseInt($input.val()) + 1); $input.change(); return false; });