Legosp Forum
Shop-Script "Legosp" => Разработка => Тема начата: Albit от Сентября 25, 2013, 04:10:52 pm
-
Вариант 1
Чтобы реализовать возможность добавлять или уменьшать количество товара в корзине с помощью кнопок + и - нужно в файле shopping_cart.tpl.html
код ( в дефолтном шаблоне строки 47-50)
<td align="left"><input type="text" name="count_{$cart_content[i].id}" id="count_{$cart_content[i].id}" value="{$cart_content[i].quantity}" size="5" min={$cart_content[i].min_q} {* onChange="$('#cart').submit();" *}/>
{if $cart_content[i].min_q>$cart_content[i].quantity} {assign var="min_q" value="1"} <label for="count_70" generated="true" class="error">{$smarty.const.ORDERS_MIN_PRODUCT}{$cart_content[i].min_q}</label>{/if}
</td>
заменить на код
<td align="leftt"><b>
<a onclick="cart_update('cart');">
<img src="./images/minus.gif" id="tt" value="-" title="Уменьшить количество товара в корзине" onclick="var qty_el = document.getElementById('count_{$cart_content[i].id}'); var qty = qty_el.value; if( !isNaN( qty ) && qty > 0 ) qty_el.value--;return false;"/></a>
<input type="text" name="count_{$cart_content[i].id}" id="count_{$cart_content[i].id}" value="{$cart_content[i].quantity}" size="1" min={$cart_content[i].min_q} {* onChange="$('#cart').submit();" *}</b>
<a onclick="cart_update('cart');">
<img src="./images/plus.gif" id="ss" value="+" title="Увеличить количество товара в корзине"onclick="var qty_el = document.getElementById('count_{$cart_content[i].id}'); var qty = qty_el.value; if( !isNaN( qty )) qty_el.value++;return false;" </a>
{if $cart_content[i].min_q>$cart_content[i].quantity} {assign var="min_q" value="1"} <label for="count_70" generated="true" class="error">{$smarty.const.ORDERS_MIN_PRODUCT}{$cart_content[i].min_q}</label>{/if}
</td>
Поскольку теперь кнопка "Пересчитать" не нужна, ее можно удалить, строка 161 код
<td align="right"><a onclick="cart_update('cart');" class="button"><span>{$smarty.const.UPDATE_BUTTON}</span></a></td>
-
Спасибо!
-
Спасибо, но в lego 6.1 не нашёл картинок minus.gif и plus.gif. Какие у них должны быть размеры?
-
Спасибо, но в lego 6.1 не нашёл картинок minus.gif и plus.gif. Какие у них должны быть размеры?
размер 11х11 например такие
-
Вариант 2:на мой взгляд более удобный - изменение количества товара происходит с помощью левой и правой кнопок мышки
в файле shopping_cart.tpl.html строку 47
<td align="left"><input type="text" name="count_{$cart_content[i].id}" id="count_{$cart_content[i].id}" value="{$cart_content[i].quantity}" size="5" min={$cart_content[i].min_q} {* onChange="$('#cart').submit();" *}/>
заменяем на
<td align="left"><<input style="width: 30px;" type="text" value="{$cart_content[i].quantity}" name="count_{$cart_content[i].id}" id="count_{$cart_content[i].id}" onclick="set_quantity('count_{$cart_content[i].id}', 1);cart_update('cart');" oncontextmenu="set_quantity('count_{$cart_content[i].id}', -1);cart_update('cart');return false" title="используйте левую и правую кнопки мыши для изменения количества">
в файле shopping_cart.tpl.html в самом низу вставляем
<script type="text/javascript">
{literal}
function set_quantity(quan, step){
var oMod = document.getElementById(quan);
if (!(iCurr = parseInt(oMod.value))) {
iCurr = 0;
}
if (!(iCurr <= 0 && step < 0)) {
oMod.value = iCurr + step;
}
}
{/literal}
</script>
-
Эх, "потыцкать" бы. жаль демки нет.
-
спасибо, пронаблюдал.
честно говоря, я не читал второй пост. меня интересовал "кнопочный" вариант, да так и юзеру понятней.
у меня есть подобный, но "ослик" его преподносит по иначему.
-
Данный модуль на сайте автора стоит http://albit.com.ua (http://albit.com.ua)
Ужасно неудобное решение как по мне.
Идёт постоянный рефреш страници, и не сразу понятно какая кнопка увеличивает а какая уменьшает, случайно нажал правую, получилось что уменьшило, а был товар 1шт. и тут бац - Ваша корзина пуста, так как типа количество 0 - это равносильно удалению товара. Приходиться лезть на сайт и по новому заказывать +)
Лучше уж кнопки поставить, ИМХО.
Спасибо за критику, в ней есть доля правды,наверное неопытному юзеру не совсем понятно как изменить количество, несмотря на подсказки да и кнопки привычней , а по мне если количество товара каждой позиции не более 1-3шт изменить количество или удалить товар одним кликом удобно.
-
да, в примере, весьма сложно сориентироваться обычному юзеру.
почему больше интересовал обычный, кнопочный вариант..
у меня есть свой вариант, и давно использую, но есть IE со всем его "злом", и приходится использовать костыли.
а ведь так хочется "чистоты" :)
ps/ честно, пробовал и эти варианты, но хочется мнения большинства.
-
Albit
Посмотрите может понравится http://jqueryui.com/spinner/
slamm
Да я тоже реализовывал аякс тут vo-stok.com.ua. Согласен что за один аякс - 35 - дороговато. Ну некоторым ставил свою реализацию по 50) Как модуль его не продаю из за трудностей в установке. Там переписал весь пхп. Уж очень много лагов в лего с корзиной...