Как Развернуть Способ Доставки На Странице Оформления Заказа
#1
Отправлено 02 Октябрь 2013 - 11:08
помогите развернуть способ доставки на странице оформления заказа.
развернуть нужно только 1 способ доставки, а именно "Доставка курьером по москве/Спб".
проблема вот в чем: для того что-бы выбрать город доставки(а у них разная стоимость), клиент должен сначала нажать на любой другой способ доставки, потом нажать "доставка по москве/спб" и только тогда сможет выбрать город.
происходит это потому, что данный способ доставки стоит первым при выборе и по умолчанию галочка уже находится на нем.....
альтернатива - убрать выбранный способ по умолчанию при переходе на шаг "Доставка" при оформлении заказа, то есть клиент переходит на Доставку и галочка не стоит на первом предложенном пункте доставки. это наиболее правильное решение проблемы. подскажите как это реализовать?
p.s. хотелось бы услышать оба варианта решения проблемы, чтобы протестировать и выбрать оптимальный
#2
Отправлено 02 Октябрь 2013 - 12:27
Serg83 (02 Октябрь 2013 - 11:08) писал:
помогите развернуть способ доставки на странице оформления заказа.
развернуть нужно только 1 способ доставки, а именно "Доставка курьером по москве/Спб".
проблема вот в чем: для того что-бы выбрать город доставки(а у них разная стоимость), клиент должен сначала нажать на любой другой способ доставки, потом нажать "доставка по москве/спб" и только тогда сможет выбрать город.
происходит это потому, что данный способ доставки стоит первым при выборе и по умолчанию галочка уже находится на нем.....
альтернатива - убрать выбранный способ по умолчанию при переходе на шаг "Доставка" при оформлении заказа, то есть клиент переходит на Доставку и галочка не стоит на первом предложенном пункте доставки. это наиболее правильное решение проблемы. подскажите как это реализовать?
p.s. хотелось бы услышать оба варианта решения проблемы, чтобы протестировать и выбрать оптимальный
Найдите код в шаблоне Оформления заказа -
{% IFNOT order_delivery.zone_list_empty %} {% FOR zone_list %} <tr>и замените на -
{% IFNOT order_delivery.zone_list_empty %} {% FOR zone_list %} <tr {% IF order_delivery.zone_list.NAME = Санкт-Петербург || order_delivery.zone_list.NAME = Москва %} style="display:block !important;" {%ENDIF%} >
#3
Отправлено 02 Октябрь 2013 - 12:37
miyako (02 Октябрь 2013 - 12:27) писал:
{% IFNOT order_delivery.zone_list_empty %} {% FOR zone_list %} <tr>и замените на -
{% IFNOT order_delivery.zone_list_empty %} {% FOR zone_list %} <tr {% IF order_delivery.zone_list.NAME = Санкт-Петербург || order_delivery.zone_list.NAME = Москва %} style="display:block !important;" {%ENDIF%} >
не знаю что должно было произойти при изменении кода, но ничего не поменялось.
галочка по умолчанию на первом пункте и он свернут.
еще теперь при разворачивании этого он стал выглядеть крайне плохо - описание зон в столбик в 3-4 строки....
и сразу еще вопрос - как сделать так, чтобы при выборе нового способа доставки (перестановке галочек), предыдущие сворачивались? а то, если снабдить зонами все способы доставки и клиент решить их почитать, страница превращается в длинное полотно...
#4
Отправлено 02 Октябрь 2013 - 14:01
Serg83 (02 Октябрь 2013 - 12:37) писал:
галочка по умолчанию на первом пункте и он свернут.
еще теперь при разворачивании этого он стал выглядеть крайне плохо - описание зон в столбик в 3-4 строки....
и сразу еще вопрос - как сделать так, чтобы при выборе нового способа доставки (перестановке галочек), предыдущие сворачивались? а то, если снабдить зонами все способы доставки и клиент решить их почитать, страница превращается в длинное полотно...
{% IFNOT order_delivery.zone_list_empty %} {% FOR zone_list %} <tr {% IF order_delivery.zone_list.NAME = Санкт-Петербург || order_delivery.zone_list.NAME = Москва %} style="display:block !important;" {%ENDIF%} >замените на -
{% IFNOT order_delivery.zone_list_empty %} {% FOR zone_list %} <tr {% IF order_delivery.zone_list.NAME = Санкт-Петербург || order_delivery.zone_list.NAME = Москва %} style="display:table-row !important;" {%ENDIF%} >
#5
Отправлено 03 Октябрь 2013 - 11:23
miyako (02 Октябрь 2013 - 14:01) писал:
{% IFNOT order_delivery.zone_list_empty %} {% FOR zone_list %} <tr {% IF order_delivery.zone_list.NAME = Санкт-Петербург || order_delivery.zone_list.NAME = Москва %} style="display:block !important;" {%ENDIF%} >замените на -
{% IFNOT order_delivery.zone_list_empty %} {% FOR zone_list %} <tr {% IF order_delivery.zone_list.NAME = Санкт-Петербург || order_delivery.zone_list.NAME = Москва %} style="display:table-row !important;" {%ENDIF%} >
галочка стоит на первом пункте и он свернут.
еще бы хотелось, чтобы открытые пункты доставки сворачивались, при выборе нового
#6
Отправлено 04 Октябрь 2013 - 02:51
$('.deliveryRadio').click(function() { $(this).closest('tbody').find('tr').show(); });
и замените его на
$('.deliveryRadio').click(function() { $('.deliveryRadio').closest('tbody').find('tr').hide(); $(this).closest('tbody').find('tr').show(); }); $('.deliveryRadio:checked').trigger('click');
#7
Отправлено 04 Октябрь 2013 - 10:03
Сake (04 Октябрь 2013 - 02:51) писал:
$('.deliveryRadio').click(function() { $(this).closest('tbody').find('tr').show(); });
и замените его на
$('.deliveryRadio').click(function() { $('.deliveryRadio').closest('tbody').find('tr').hide(); $(this).closest('tbody').find('tr').show(); }); $('.deliveryRadio:checked').trigger('click');
заменил, но ничего не изменилось
#8
Отправлено 05 Октябрь 2013 - 00:30
#10
Отправлено 09 Октябрь 2013 - 01:28
/* !PickPoint--*/ $(function() { $('.deliveryZoneRadio').closest('tr').hide(); $('.deliveryRadio').click(function() { $(this).closest('tbody').find('tr').show(); }); $('.deliveryRadio:checked').trigger('click');
и замените на
/* !PickPoint--*/ $(function() { $('.deliveryZoneRadio').closest('tr').hide(); $('.deliveryRadio').click(function() { $('.orderStageDeliveryListTable > tbody').each(function() { $(this).find('tr:not(:eq(0), :eq(1))').hide(); }); $(this).closest('tbody').find('tr').show(); }); $('.deliveryRadio:checked').trigger('click');
#11
Отправлено 09 Октябрь 2013 - 09:59
код заменил, посмотрим изменится ли что-то после чистки кеша
#12
Отправлено 10 Октябрь 2013 - 01:13
Цитата
Это по сути именно то что вы и хотели.
#14
Отправлено 15 Август 2014 - 11:09
#15
Отправлено 16 Август 2014 - 00:18
{% FOR zone_list %} <!-- Заголовок внутри метода доставки, появляется только один раз--> {% IF order_delivery.zone_list.index=1 %} <tr> <td></td> <td> <label for="deliveryId{order_delivery.ID}"> <p class="fnt12b"> <i>Выберите костюм:</i> </p> </label> </td> <td></td> </tr> {% ENDIF %} <tr> <td></td> <td> <input type="radio" class="deliveryZoneRadio" deliveryid="{order_delivery.ID}" id="deliveryZoneId{order_delivery.zone_list.ID}" name="form[delivery][zone_id]" value="{order_delivery.zone_list.ID}" {% IF order_delivery.zone_list.ID = ORDER_FORM_DELIVERY_ZONE_ID %} checked="checked" rel="true" {% ENDIF %} /> <label for="deliveryZoneId{order_delivery.zone_list.ID}"> {order_delivery.zone_list.NAME} </label> </td> <td width="18%"> <label for="deliveryZoneId{order_delivery.zone_list.ID}"> <span class="deliveryZonePrice"> <b>+ {order_delivery.zone_list.END_PRICE | money_format}</b> </span> </label> </td> </tr> {% ENDFOR zone_list %}замените на:
{% FOR zone_list %} <tr class="zones"> <td></td> <td> <!-- Заголовок внутри метода доставки, появляется только один раз--> {% IF order_delivery.zone_list.index=1 %} <label for="quickDeliveryIdMain{order_delivery.ID}" class="zones-header">Зоны доставки</label> {% ENDIF %} <input type="radio" class="deliveryZoneRadio" deliveryid="{order_delivery.ID}" id="quickDeliveryZoneId{order_delivery.zone_list.ID}" name="form[delivery][zone_id]" value="{order_delivery.zone_list.ID}" {% IF order_delivery.zone_list.ID = ORDER_FORM_DELIVERY_ZONE_ID %} checked="checked" rel="true" {% ENDIF %} /> <label class="orderStageDeliveryZoneLabel" for="quickDeliveryZoneId{order_delivery.zone_list.ID}" style="color: #333;"> {order_delivery.zone_list.NAME} <span class="deliveryZonePrice" style="color: #333;">{order_delivery.zone_list.END_PRICE | money_format}</span> </label> </td> <td></td> </tr> {% ENDFOR %}
далее в конце main.js пропишите:
/* !PickPoint--*/ $(function() { $('.zones').hide(); $('.deliveryRadio').click(function() { $('.orderStageDeliveryListTable > tbody').each(function() { $(this).find('tr:not(:eq(0), :eq(1))').hide(); }); $(this).closest('tbody').find('tr').show(); }); $('.deliveryRadio:checked').trigger('click'); });
#16
Отправлено 18 Август 2014 - 12:45
Vaccina (16 Август 2014 - 00:18) писал:
{% FOR zone_list %} <!-- Заголовок внутри метода доставки, появляется только один раз--> {% IF order_delivery.zone_list.index=1 %} <tr> <td></td> <td> <label for="deliveryId{order_delivery.ID}"> <p class="fnt12b"> <i>Выберите костюм:</i> </p> </label> </td> <td></td> </tr> {% ENDIF %} <tr> <td></td> <td> <input type="radio" class="deliveryZoneRadio" deliveryid="{order_delivery.ID}" id="deliveryZoneId{order_delivery.zone_list.ID}" name="form[delivery][zone_id]" value="{order_delivery.zone_list.ID}" {% IF order_delivery.zone_list.ID = ORDER_FORM_DELIVERY_ZONE_ID %} checked="checked" rel="true" {% ENDIF %} /> <label for="deliveryZoneId{order_delivery.zone_list.ID}"> {order_delivery.zone_list.NAME} </label> </td> <td width="18%"> <label for="deliveryZoneId{order_delivery.zone_list.ID}"> <span class="deliveryZonePrice"> <b>+ {order_delivery.zone_list.END_PRICE | money_format}</b> </span> </label> </td> </tr> {% ENDFOR zone_list %}замените на:
{% FOR zone_list %} <tr class="zones"> <td></td> <td> <!-- Заголовок внутри метода доставки, появляется только один раз--> {% IF order_delivery.zone_list.index=1 %} <label for="quickDeliveryIdMain{order_delivery.ID}" class="zones-header">Зоны доставки</label> {% ENDIF %} <input type="radio" class="deliveryZoneRadio" deliveryid="{order_delivery.ID}" id="quickDeliveryZoneId{order_delivery.zone_list.ID}" name="form[delivery][zone_id]" value="{order_delivery.zone_list.ID}" {% IF order_delivery.zone_list.ID = ORDER_FORM_DELIVERY_ZONE_ID %} checked="checked" rel="true" {% ENDIF %} /> <label class="orderStageDeliveryZoneLabel" for="quickDeliveryZoneId{order_delivery.zone_list.ID}" style="color: #333;"> {order_delivery.zone_list.NAME} <span class="deliveryZonePrice" style="color: #333;">{order_delivery.zone_list.END_PRICE | money_format}</span> </label> </td> <td></td> </tr> {% ENDFOR %}
далее в конце main.js пропишите:
/* !PickPoint--*/ $(function() { $('.zones').hide(); $('.deliveryRadio').click(function() { $('.orderStageDeliveryListTable > tbody').each(function() { $(this).find('tr:not(:eq(0), :eq(1))').hide(); }); $(this).closest('tbody').find('tr').show(); }); $('.deliveryRadio:checked').trigger('click'); });
#17
Отправлено 19 Август 2014 - 08:40
.zones-header { float: none !important; }
а javascript код выше замените на:
$(function () { $('.zones').hide(); $('.deliveryRadio').click(function () { $('.zones').hide(); var tree = $(this).closest('tr'); while(true) { if (!tree.next('.zones').length) break; tree = tree.next('.zones').show(); } }); $('.deliveryRadio:checked') .trigger('click'); });
#18
Отправлено 20 Август 2014 - 22:20
Vaccina (19 Август 2014 - 08:40) писал:
.zones-header { float: none !important; }
а javascript код выше замените на:
$(function () { $('.zones').hide(); $('.deliveryRadio').click(function () { $('.zones').hide(); var tree = $(this).closest('tr'); while(true) { if (!tree.next('.zones').length) break; tree = tree.next('.zones').show(); } }); $('.deliveryRadio:checked') .trigger('click'); });
#19
Отправлено 20 Август 2014 - 23:41
#20
Отправлено 28 Август 2014 - 19:23
Сake (20 Август 2014 - 23:41) писал:
быстрый заказ используется только при заказе с карточки товара!
оформление же через корзину идет стандартными долгими 4-мя шагами....
Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 анонимных