Автоматическое обновление товара в корзине при изменении в input
Доброго дня!
Не могу понять как автоматически изменять количество товара в шаблоне корзины, при оформлении заказа
Вот блок
Но не могу понять как это реализовать
minishop2 fenom
И можно ли менять сумму у товара на лету, при изменении колва, а не только общую сумму покупок?
Не могу понять как автоматически изменять количество товара в шаблоне корзины, при оформлении заказа
Вот блок
<td class="count">
<form method="post" class="ms2_form" role="form">
<input type="hidden" name="key" value="{$product.key}"/>
<div class="quantity">
<div class="pro-qty">
<span class="inc qtybtn"></span>
<span class="dec qtybtn"></span>
<input type="text" name="count" value="1" min="1" >
</div>
</div>
</form>
</td>
Я так понимаю, что нужно какую-то js что бы подхватывала на нажатие «inc»/«dec» и передавала post с cart/changeНо не могу понять как это реализовать
minishop2 fenom
И можно ли менять сумму у товара на лету, при изменении колва, а не только общую сумму покупок?
Комментарии: 9
1) Меняем значение в корзине
JS
HTML
2) Сумма товара в корзине: вытащите код из этого PR github.com/bezumkin/miniShop2/pull/358
JS
/* cart plus/minus | quantity */
$('body').delegate('.bminus', 'click', function () {
var $input = $(this).parent().find('input');
var val = +$input[0].defaultValue;
var count = parseInt($input.val()) - 1;
count = count < 1 ? 1 : count;
$input.val(count);
$input.change();
return false;
});
$('body').delegate('.bplus','click', function () {
var $input = $(this).parent().find('input');
var val = +$input[0].defaultValue;
$input.val(parseInt($input.val()) + 1);
$input.change();
return false;
});
HTML
<form method="post" class="ms2_form" role="form">
<input type="hidden" name="key" value="{$product.key}"/>
<div class="quantity">
<input type="number" name="count" value="{$product.count}" min="1" required>
<span class="bminus"></span>
<span class="bplus"></span>
</div>
</form>
2) Сумма товара в корзине: вытащите код из этого PR github.com/bezumkin/miniShop2/pull/358
Да, я пробовал так…
Нашел решение где-то, но у меня почему-то не подхватывается событие(
Ох, печаль-беда
Но за ответ спасибо)
Нашел решение где-то, но у меня почему-то не подхватывается событие(
Ох, печаль-беда
Но за ответ спасибо)
это с рабочего проекта, смотрите консоль, может у вас jquery не подключен или еще что-то
Сначала подключаю jquery, потом скрипт ваш…
Дело в том, что у меня к классу добавляется еще один. То есть в коде так:
Дело в том, что у меня к классу добавляется еще один. То есть в коде так:
<span class="inc"></span>
<span class="dec"></span>
А на рабочем проекте подставляются еще классы:<div class="pro-qty count"><span class="dec qtybtn">-</span>
<input type="number" name="count" value="15" min="1" required="">
<span class="inc"></span>
<span class="dec"></span>
<span class="inc qtybtn">+</span></div>
Не могу понять как автоматически изменять количество товара в шаблоне корзины, при оформлении заказаВопрос не в этот форум. Я не говорю, что нельзя, но вам бы на форуме по js ответили бы исчерпывающе и давно. miniShop2 умеет это делать самостоятельно, он всего лишь ждет когда количество товара изменится, соответственно вам либо на форумы по js, либо используйте <input type="number">
$('.dec').click(function () {
var $input = $(this).parent().find('input[type=number]');
var count = parseInt($input.val()) - 1;
count = count < 1 ? 1 : count;
$input.val(count);
$input.change();
return false;
});
$('.inc').click(function () {
var $input = $(this).parent().find('input[type=number]');
$input.val(parseInt($input.val()) + 1);
$input.change();
return false;
});
+|- количество меняют в инпуте, но корзина при этом не обновляется…
Загрузите собственные чанки ms2 и проверьте, всё ли работает, если да, то значит у вас селекторы не указаны/указаны неверно, чтобы решить эту проблему, вам нужно внимательно смотреть на чанк корзины и на ваш собственный. А если у вас с родными чанками не будет обновляться, то напишите issue а репозитории ms2, а мы постараемся помочь
Если правильно понял суть, то…
В оригинальном чанке в этой форме есть кнопка «обновить». Если её вставить и скрыть, то должно изменяться автоматически количество и стоимость.
В оригинальном чанке в этой форме есть кнопка «обновить». Если её вставить и скрыть, то должно изменяться автоматически количество и стоимость.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.