Минимальное Количество Товара
#1
Отправлено 18 Декабрь 2013 - 13:52
#2
Отправлено 19 Декабрь 2013 - 03:19
#3
Отправлено 19 Декабрь 2013 - 11:59
#4
Отправлено 20 Декабрь 2013 - 05:58
http://forum.storela...ажа/#entry95388
http://forum.storela...ка/#entry103869
http://forum.storela...не/#entry106397
Почитайте данные темы внимательно. Данных тем вам будет достаточно для реализации задуманного механизма.
#5
Отправлено 26 Декабрь 2013 - 13:01
#6
Отправлено 27 Декабрь 2013 - 05:52
<div class="numeric_input"> <input type="text" class="text_q" name="form[goods_mod_quantity]" id="quantity_wanted" value="1" title="Количество" maxlength="12" onkeydown="this.blur()"/><div style="margin-top: -3px;"> <input type="button" class="up_button" onclick="this.parentNode.previousSibling.value++" /> <input type="button" class="down_button" onclick="this.parentNode.previousSibling.value--" /> </div> </div>
и замените его на
<div class="numeric_input {% FOR upper_navigation %}{% IF upper_navigation.NAME = Светодиодная лента %}access{% ENDIF %}{% ENDFOR %}"> <input type="text" class="text_q" name="form[goods_mod_quantity]" id="quantity_wanted" value="1" title="Количество" maxlength="12" readonly="readonly" /><div style="margin-top: -3px;"> <input type="button" class="up_button" /> <input type="button" class="down_button" /> </div> </div>
После этого вам необходимо определить характеристику по которой будет вестись подсчет кратности. В качестве примера это "Количество в упаковке" и задано произвольное значение. Как характеристика будет определена - добавьте в файл main.js код
$(function() { if($('.numeric_input').lenght && !$('.numeric_input.access').lenght) { $('.numeric_input').remove(); } if($('.goodsPageSubmitButtonBlock #quantity_wanted').length) { var quantity = $('.goodsPageSubmitButtonBlock #quantity_wanted'); $('.goodsDataForm .charactir td').each(function() { if($.trim($(this).text()) === 'Количество пар в коробке') { quantity.val(parseInt($.trim($(this).next().text()))); return(false); } }); } $('.goodsPageSubmitButtonBlock .down_button').click(function() { if($(html).find('.goodsPageSubmitButtonBlock #quantity_wanted').length) { var quantity = $('.goodsPageSubmitButtonBlock #quantity_wanted'); $('.goodsDataForm .charactir td').each(function() { if($.trim($(this).text()) === 'Количество пар в коробке') { var interval = parseInt($.trim($(this).next().text())); var count = parseInt(quantity.val()) - interval; count = count < interval ? interval : count; quantity.val(count); quantity.change(); return(false); } }); } }); $('.goodsPageSubmitButtonBlock .up_button').click(function() { if($(html).find('.goodsPageSubmitButtonBlock #quantity_wanted').length) { var quantity = $('.goodsPageSubmitButtonBlock #quantity_wanted'); $('.goodsDataForm .charactir td').each(function() { if($.trim($(this).text()) === 'Количество пар в коробке') { var interval = parseInt($.trim($(this).next().text())); quantity.val(parseInt(quantity.val()) + interval); quantity.change(); return(false); } }); } }); });
В добавленном коде вам необходимо будет заменить строку "Количество пар в коробке" на имя вашей характеристики по которой будет вестись соответствующий подсчет.
#7
Отправлено 29 Декабрь 2013 - 13:01
#9
Отправлено 29 Декабрь 2013 - 14:10
#10
Отправлено 29 Декабрь 2013 - 14:26
i.smetanin (29 Декабрь 2013 - 14:10) писал:
Тогда измените код -
$(function() { if($('.numeric_input').lenght && !$('.numeric_input.access').lenght) { $('.numeric_input').remove(); } if($('.goodsPageSubmitButtonBlock #quantity_wanted').length) { var quantity = $('.goodsPageSubmitButtonBlock #quantity_wanted'); $('.goodsDataForm .charactir td').each(function() { if($.trim($(this).text()) === 'Количество пар в коробке') { quantity.val(parseInt($.trim($(this).next().text()))); return(false); } }); } $('.goodsPageSubmitButtonBlock .down_button').click(function() { if($(html).find('.goodsPageSubmitButtonBlock #quantity_wanted').length) { var quantity = $('.goodsPageSubmitButtonBlock #quantity_wanted'); $('.goodsDataForm .charactir td').each(function() { if($.trim($(this).text()) === 'Количество пар в коробке') { var interval = parseInt($.trim($(this).next().text())); var count = parseInt(quantity.val()) - interval; count = count < interval ? interval : count; quantity.val(count); quantity.change(); return(false); } }); } }); $('.goodsPageSubmitButtonBlock .up_button').click(function() { if($(html).find('.goodsPageSubmitButtonBlock #quantity_wanted').length) { var quantity = $('.goodsPageSubmitButtonBlock #quantity_wanted'); $('.goodsDataForm .charactir td').each(function() { if($.trim($(this).text()) === 'Количество пар в коробке') { var interval = parseInt($.trim($(this).next().text())); quantity.val(parseInt(quantity.val()) + interval); quantity.change(); return(false); } }); } }); });на -
$(function() { if($('.numeric_input').lenght && !$('.numeric_input.access').lenght) { $('.numeric_input').remove(); } if($('.goodsPageSubmitButtonBlock #quantity_wanted').length) { var quantity = $('.goodsPageSubmitButtonBlock #quantity_wanted'); $('.goodsDataForm .charactir td').each(function() { if($.trim($(this).text()) === 'Метров в бухте') { quantity.val(parseInt($.trim($(this).next().text()))); return(false); } }); } $('.goodsPageSubmitButtonBlock .down_button').click(function() { if($(html).find('.goodsPageSubmitButtonBlock #quantity_wanted').length) { var quantity = $('.goodsPageSubmitButtonBlock #quantity_wanted'); $('.goodsDataForm .charactir td').each(function() { if($.trim($(this).text()) === 'Метров в бухте') { var interval = parseInt($.trim($(this).next().text())); var count = parseInt(quantity.val()) - interval; count = count < interval ? interval : count; quantity.val(count); quantity.change(); return(false); } }); } }); $('.goodsPageSubmitButtonBlock .up_button').click(function() { if($(html).find('.goodsPageSubmitButtonBlock #quantity_wanted').length) { var quantity = $('.goodsPageSubmitButtonBlock #quantity_wanted'); $('.goodsDataForm .charactir td').each(function() { if($.trim($(this).text()) === 'Метров в бухте') { var interval = parseInt($.trim($(this).next().text())); quantity.val(parseInt(quantity.val()) + interval); quantity.change(); return(false); } }); } }); });
#11
Отправлено 29 Декабрь 2013 - 14:47
#12
Отправлено 31 Декабрь 2013 - 00:26
<li class="goodsPageSubmitButtonBlock" {% IF GOODS_MOD_REST_VALUE=0 %}style="display:none;"{% ENDIF %}><a class="whtblue" onclick="$('.goodsDataForm').submit(); return false;" title="Положить «{GOODS_NAME}» в корзину" href="#">В корзину</a></li> <div class="goodsDataMainModificationQuantity" style="float:left;"> <label for="quantity_wanted">Количество :</label> <div class="numeric_input"> <input type="text" class="text_q" name="form[goods_mod_quantity]" id="quantity_wanted" value="1" title="Количество" maxlength="12" onkeydown="this.blur()"/><div style="margin-top: -3px;"> <input type="button" class="up_button" onclick="this.parentNode.previousSibling.value++" /> <input type="button" class="down_button" onclick="this.parentNode.previousSibling.value--" /> </div> </div> <div class="clear"></div> </div> <!-- Если в тарифном плане подключен модуль сравнения товаров --> {% IF TARIFF_FEATURE_GOODS_COMPARE %}
и замените его на
<li class="goodsPageSubmitButtonBlock" {% IF GOODS_MOD_REST_VALUE=0 %}style="display:none;"{% ENDIF %}><a class="whtblue" onclick="$('.goodsDataForm').submit(); return false;" title="Положить «{GOODS_NAME}» в корзину" href="#">В корзину</a> <div class="goodsDataMainModificationQuantity" style="float:left;"> <label for="quantity_wanted">Количество :</label> <div class="numeric_input {% FOR upper_navigation %}{% IF upper_navigation.NAME = Светодиодная лента %}access{% ENDIF %}{% ENDFOR %}"> <input type="text" class="text_q" name="form[goods_mod_quantity]" id="quantity_wanted" value="1" title="Количество" maxlength="12" readonly="readonly" /> <div style="margin-top: -3px;"> <input type="button" class="up_button" /> <input type="button" class="down_button" /> </div> </div> <div class="clear"></div> </div> </li> <!-- Если в тарифном плане подключен модуль сравнения товаров --> {% IF TARIFF_FEATURE_GOODS_COMPARE %}
#13
Отправлено 31 Декабрь 2013 - 07:29
#14
Отправлено 05 Январь 2014 - 01:37
#15
Отправлено 05 Январь 2014 - 15:24
Внес изменения обратно.
#16
Отправлено 07 Январь 2014 - 13:04
#17
Отправлено 08 Январь 2014 - 06:18
if($(html).find('.goodsPageSubmitButtonBlock #quantity_wanted').length)
и замените каждую из них на строку
if($('.goodsPageSubmitButtonBlock #quantity_wanted').length)
#18
Отправлено 08 Январь 2014 - 06:41
#19
Отправлено 08 Январь 2014 - 06:53
$('.goodsDataForm .charactir td')
и замените каждую из них на строку
$('#content .charactir td')
Далее в шаблоне "Товар" найдите код
<div class="goodsDataMainModificationQuantity" style="float:left;"> <label for="quantity_wanted">Количество :</label>
и замените его на
<div class="goodsDataMainModificationQuantity" style="margin-top: 10px;"> <label for="quantity_wanted" style="float:left;margin: 4px 0;">Количество :</label>
#20
Отправлено 08 Январь 2014 - 07:04
Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 анонимных