Перейти к содержимому


Вопрос По Раскладке Доставки.


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 26

#1 Paparam

Paparam

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 118 сообщений

Отправлено 06 Октябрь 2017 - 13:08

1. Можно ли сделать так, чтобы в разделе выбора самовывоза городов отображался не весь список как на скрине 1, а была система поиска как в скрине 2 ( ну или была строка поиска *укажите Ваш город*)

2. Возможно ли привести раздел "выбор доставки" не как в скрине 3, а к виду /Выбрать город/ --} /прикрепленный список вариантов/ . Стоимость доставки отдельно внизу окошком черным цветом (чтобы бросалось в глаза)

Прикрепленные изображения

  • 1.png
  • 2.png
  • 3.png


#2 Vaccina

Vaccina

    Активный участник

  • Модераторы
  • 24 217 сообщений

Отправлено 07 Октябрь 2017 - 07:29

Здравствуйте.

Инструкцией по изменению вывода способов доставки в выпадающий список:
https://forum.storel...__20#entry84991

Инструкция по вставке виджета:
https://forum.storel...тавка-виджетов/

#3 Paparam

Paparam

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 118 сообщений

Отправлено 09 Октябрь 2017 - 10:39

.

#4 Paparam

Paparam

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 118 сообщений

Отправлено 10 Октябрь 2017 - 09:13

Просмотр сообщенияVaccina (07 Октябрь 2017 - 07:29) писал:

Здравствуйте.

Инструкцией по изменению вывода способов доставки в выпадающий список:
https://forum.storel...__20#entry84991

Инструкция по вставке виджета:
https://forum.storel...тавка-виджетов/





День добрый, следовал инструкции вывод способа доставки в выпадающий список.
Следовал инструкциям, в итоге выдает ошибку (во вложении)
Это я криво вставляю, или код изменился? (ссылка на инструкцию 2013 года)
Пользователь SL-421285

Я так понимаю судя по коментария в конце темы :
https://forum.storel...тавка-виджетов/

Проблему подвязки цены виджета , к цене отображения при оформлении доставки так и не удалось решить?

Прикрепленные изображения

Прикрепленные изображения

  • Ошибка.png


#5 Stasya

Stasya

    Активный участник

  • Модератоpы
  • 4 007 сообщений

Отправлено 11 Октябрь 2017 - 14:00

Просмотр сообщенияPaparam (10 Октябрь 2017 - 09:13) писал:

День добрый, следовал инструкции вывод способа доставки в выпадающий список.
Следовал инструкциям, в итоге выдает ошибку (во вложении)
Это я криво вставляю, или код изменился? (ссылка на инструкцию 2013 года)
Пользователь SL-421285

Я так понимаю судя по коментария в конце темы :
https://forum.storel...тавка-виджетов/

Проблему подвязки цены виджета , к цене отображения при оформлении доставки так и не удалось решить?

Прикрепленные изображения
Здравствуйте. Уточните, пожалуйста, в какой именно иснтуркции и при вставке какого кода у Вас возникли проблемы?
Что касаемо цены доставки, то, к сожалению, передавать в сумму заказа стоимость доставки нельзя.

#6 Paparam

Paparam

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 118 сообщений

Отправлено 11 Октябрь 2017 - 16:06

Просмотр сообщенияStasya (11 Октябрь 2017 - 14:00) писал:

Здравствуйте. Уточните, пожалуйста, в какой именно иснтуркции и при вставке какого кода у Вас возникли проблемы?
Что касаемо цены доставки, то, к сожалению, передавать в сумму заказа стоимость доставки нельзя.

Инструкция по изменению вывода способов доставки в выпадающий список:

#7 Paparam

Paparam

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 118 сообщений

Отправлено 13 Октябрь 2017 - 10:21

Просмотр сообщенияStasya (11 Октябрь 2017 - 14:00) писал:

Здравствуйте. Уточните, пожалуйста, в какой именно иснтуркции и при вставке какого кода у Вас возникли проблемы?
Что касаемо цены доставки, то, к сожалению, передавать в сумму заказа стоимость доставки нельзя.

Инструкция по изменению вывода способов доставки в выпадающий список:


#8 Vaccina

Vaccina

    Активный участник

  • Модераторы
  • 24 217 сообщений

Отправлено 14 Октябрь 2017 - 08:57

Здравствуйте.

Зайдите в раздел Сайт - Редактор шаблонов - Быстрый заказ - найдите:
{% FOR order_delivery %}
			  <tbody rel="{order_delivery.ID}">
				<tr {% IF order_delivery.first %}class="first"{% ENDIF %}>
				  <td class="cell1" rowspan="2">
					<input type="radio" id="deliveryId{order_delivery.ID}" name="form[delivery][id]" value="{order_delivery.ID}" class="required deliveryRadio inFastOrder"
					  {% IFNOT ORDER_FORM_DELIVERY_ID %}
						{% IF order_delivery.first %}
						  checked="checked"
						{% ENDIF %}
					  {% ELSEIF order_delivery.ID = ORDER_FORM_DELIVERY_ID %}
						checked="checked"
					  {% ENDIF %}
					/>
				  </td>
				  <td class="cell2">
					<label for="deliveryId{order_delivery.ID}">{order_delivery.NAME}</label>
				  </td>
				  <td rowspan="2" class="cell3 pricefield">
				   <span class="orderStageDeliveryDefaultPrice" {% IF order_delivery.ZONE_ID>0 %}style="display:none;"{% ENDIF%}>{order_delivery.END_PRICE | money_format}</span>
					<span class="orderStageDeliveryZonePrice" {% IF order_delivery.ZONE_ID<1 %}style="display:none;"{% ENDIF%}>{order_delivery.ZONE_END_PRICE | money_format}</span>
				  </td>
				</tr>
				<tr>
				  <td class="cell4"><p style="color: #333;">{order_delivery.DESC}</p></td>
				</tr>
				{% IFNOT order_delivery.zone_list_empty %}
				
				  {% FOR zone_list %}
				 
					<tr class="zones incart">
					  <td></td>
					  <td>
						<!-- Заголовок внутри метода доставки, появляется только один раз-->  
						{% IF order_delivery.zone_list.index=1 %}
						  <label for="deliveryId{order_delivery.ID}" class="zones-header">Зоны доставки</label><br />
						{% ENDIF %}
						<input
						  type="radio" class="deliveryZoneRadio inFastOrder" 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 class="orderStageDeliveryZoneLabel" for="deliveryZoneId{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 %}
				{% ENDIF %}
			  </tbody>
			{% ENDFOR %}
            
замените на:
{% FOR order_delivery %}
						 <tbody rel="{order_delivery.ID}">
								 <tr {% IF order_delivery.first %}class="first"{% ENDIF %}>
				  <td class="cell1" rowspan="2">
					<input type="radio" id="deliveryId{order_delivery.ID}" name="form[delivery][id]" value="{order_delivery.ID}" class="required deliveryRadio inFastOrder"
					  {% IFNOT ORDER_FORM_DELIVERY_ID %}
						{% IF order_delivery.first %}
						  checked="checked"
						{% ENDIF %}
					  {% ELSEIF order_delivery.ID = ORDER_FORM_DELIVERY_ID %}
						checked="checked"
					  {% ENDIF %}
					/>
				  </td>
				  <td class="cell2">
					<label for="deliveryId{order_delivery.ID}">{order_delivery.NAME}</label>
				  </td>
				  <td rowspan="2" class="cell3 pricefield">
				   <span class="orderStageDeliveryDefaultPrice" {% IF order_delivery.ZONE_ID>0 %}style="display:none;"{% ENDIF%}>{order_delivery.END_PRICE | money_format}</span>
					<span class="orderStageDeliveryZonePrice" {% IF order_delivery.ZONE_ID<1 %}style="display:none;"{% ENDIF%}>{order_delivery.ZONE_END_PRICE | money_format}</span>
				  </td>
				</tr>
				<tr>
								 <td class="cell4">{order_delivery.DESC}</td>
								 </tr>
								 {% IFNOT order_delivery.zone_list_empty %}
								 <tr>
										 <td></td>
										 <td class="cell5">
										 <select style="margin-left:0;" class="deliveryZoneRadio" data-deliveryid="{order_delivery.ID}" name="form[delivery][zone_id]" {% IF order_delivery.zone_list.ID = ORDER_FORM_DELIVERY_ZONE_ID %}class="required"{% ENDIF %}>
												 <option value="0" data-price="{order_delivery.END_PRICE | number_format("0", ",", " ")}"> - выберите зону доставки - </option>
												 {% FOR zone_list %}
												 <option value="{order_delivery.zone_list.ID}" data-price="{order_delivery.zone_list.END_PRICE | number_format("0", ",", " ")}" {% IF order_delivery.zone_list.ID=ORDER_FORM_DELIVERY_ZONE_ID %}selected="selected"{% ENDIF %}>
														 {order_delivery.zone_list.NAME}
												 </option>
												 {%ENDFOR%}
										 </select>
										 </td>
								 </tr>
								 {% ENDIF %}
						 </tbody>
						 {% ENDFOR %}
                        
                        
далее найдите:
$('.deliveryRadio').click(function(){  
	  var ID = $('input[name="form[delivery][id]"]:checked').val();  
	  $('.quick_order_payment').hide();
	  $('.quick_order_payment[rel="' + ID + '"]').show();
	  $('.quick_order_payment[rel="' + ID + '"]').find('input:first').attr('checked', true);
	});
    
    
после него пропишите:
// Смена стоимости доставки при выборе конкретной зоны доставки
$('.orderInfo select').change(function(){
var value = $(this).find('option:selected').attr('data-price');
$('tbody[rel="' + $(this).attr('data-deliveryid') + '"] .orderStageDeliveryDefaultPrice .num').text(value);

// Установка шарика на пункт зоны доставки
$('#deliveryId' + $(this).attr('data-deliveryid')).click();

});


#9 Paparam

Paparam

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 118 сообщений

Отправлено 15 Октябрь 2017 - 10:51

Просмотр сообщенияVaccina (14 Октябрь 2017 - 08:57) писал:

Здравствуйте.

Зайдите в раздел Сайт - Редактор шаблонов - Быстрый заказ - найдите:
{% FOR order_delivery %}
			 <tbody rel="{order_delivery.ID}">
			 <tr {% IF order_delivery.first %}class="first"{% ENDIF %}>
				 <td class="cell1" rowspan="2">
				 <input type="radio" id="deliveryId{order_delivery.ID}" name="form[delivery][id]" value="{order_delivery.ID}" class="required deliveryRadio inFastOrder"
					 {% IFNOT ORDER_FORM_DELIVERY_ID %}
					 {% IF order_delivery.first %}
						 checked="checked"
					 {% ENDIF %}
					 {% ELSEIF order_delivery.ID = ORDER_FORM_DELIVERY_ID %}
					 checked="checked"
					 {% ENDIF %}
				 />
				 </td>
				 <td class="cell2">
				 <label for="deliveryId{order_delivery.ID}">{order_delivery.NAME}</label>
				 </td>
				 <td rowspan="2" class="cell3 pricefield">
				 <span class="orderStageDeliveryDefaultPrice" {% IF order_delivery.ZONE_ID>0 %}style="display:none;"{% ENDIF%}>{order_delivery.END_PRICE | money_format}</span>
				 <span class="orderStageDeliveryZonePrice" {% IF order_delivery.ZONE_ID<1 %}style="display:none;"{% ENDIF%}>{order_delivery.ZONE_END_PRICE | money_format}</span>
				 </td>
			 </tr>
			 <tr>
				 <td class="cell4"><p style="color: #333;">{order_delivery.DESC}</p></td>
			 </tr>
			 {% IFNOT order_delivery.zone_list_empty %}
			
				 {% FOR zone_list %}
			
				 <tr class="zones incart">
					 <td></td>
					 <td>
					 <!-- Заголовок внутри метода доставки, появляется только один раз-->
					 {% IF order_delivery.zone_list.index=1 %}
						 <label for="deliveryId{order_delivery.ID}" class="zones-header">Зоны доставки</label><br />
					 {% ENDIF %}
					 <input
						 type="radio" class="deliveryZoneRadio inFastOrder" 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 class="orderStageDeliveryZoneLabel" for="deliveryZoneId{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 %}
			 {% ENDIF %}
			 </tbody>
		 {% ENDFOR %}

замените на:
{% FOR order_delivery %}
						 <tbody rel="{order_delivery.ID}">
								 <tr {% IF order_delivery.first %}class="first"{% ENDIF %}>
				 <td class="cell1" rowspan="2">
				 <input type="radio" id="deliveryId{order_delivery.ID}" name="form[delivery][id]" value="{order_delivery.ID}" class="required deliveryRadio inFastOrder"
					 {% IFNOT ORDER_FORM_DELIVERY_ID %}
					 {% IF order_delivery.first %}
						 checked="checked"
					 {% ENDIF %}
					 {% ELSEIF order_delivery.ID = ORDER_FORM_DELIVERY_ID %}
					 checked="checked"
					 {% ENDIF %}
				 />
				 </td>
				 <td class="cell2">
				 <label for="deliveryId{order_delivery.ID}">{order_delivery.NAME}</label>
				 </td>
				 <td rowspan="2" class="cell3 pricefield">
				 <span class="orderStageDeliveryDefaultPrice" {% IF order_delivery.ZONE_ID>0 %}style="display:none;"{% ENDIF%}>{order_delivery.END_PRICE | money_format}</span>
				 <span class="orderStageDeliveryZonePrice" {% IF order_delivery.ZONE_ID<1 %}style="display:none;"{% ENDIF%}>{order_delivery.ZONE_END_PRICE | money_format}</span>
				 </td>
			 </tr>
			 <tr>
								 <td class="cell4">{order_delivery.DESC}</td>
								 </tr>
								 {% IFNOT order_delivery.zone_list_empty %}
								 <tr>
										 <td></td>
										 <td class="cell5">
										 <select style="margin-left:0;" class="deliveryZoneRadio" data-deliveryid="{order_delivery.ID}" name="form[delivery][zone_id]" {% IF order_delivery.zone_list.ID = ORDER_FORM_DELIVERY_ZONE_ID %}class="required"{% ENDIF %}>
												 <option value="0" data-price="{order_delivery.END_PRICE | number_format("0", ",", " ")}"> - выберите зону доставки - </option>
												 {% FOR zone_list %}
												 <option value="{order_delivery.zone_list.ID}" data-price="{order_delivery.zone_list.END_PRICE | number_format("0", ",", " ")}" {% IF order_delivery.zone_list.ID=ORDER_FORM_DELIVERY_ZONE_ID %}selected="selected"{% ENDIF %}>
														 {order_delivery.zone_list.NAME}
												 </option>
												 {%ENDFOR%}
										 </select>
										 </td>
								 </tr>
								 {% ENDIF %}
						 </tbody>
						 {% ENDFOR %}


далее найдите:
$('.deliveryRadio').click(function(){
	 var ID = $('input[name="form[delivery][id]"]:checked').val();
	 $('.quick_order_payment').hide();
	 $('.quick_order_payment[rel="' + ID + '"]').show();
	 $('.quick_order_payment[rel="' + ID + '"]').find('input:first').attr('checked', true);
});


после него пропишите:
// Смена стоимости доставки при выборе конкретной зоны доставки
$('.orderInfo select').change(function(){
var value = $(this).find('option:selected').attr('data-price');
$('tbody[rel="' + $(this).attr('data-deliveryid') + '"] .orderStageDeliveryDefaultPrice .num').text(value);

// Установка шарика на пункт зоны доставки
$('#deliveryId' + $(this).attr('data-deliveryid')).click();

});


Здравствуйте!
1. В быстром заказе получилось вставить выпадающий список при выборе доставки, НО не получилась смена стоимости доставки при выборе конкретной зоны доставки.
2. При оформлении заказа через корзину не получилось вставить выпадающий список и смену стоимости доставки при выборе конкретной зоны доставки.

Пользователь: SL-421285

#10 Ирина345

Ирина345

    Активный участник

  • Модераторы
  • 5 709 сообщений

Отправлено 08 Ноябрь 2017 - 13:35

Просмотр сообщенияPaparam (15 Октябрь 2017 - 10:51) писал:

Здравствуйте!
1. В быстром заказе получилось вставить выпадающий список при выборе доставки, НО не получилась смена стоимости доставки при выборе конкретной зоны доставки.
2. При оформлении заказа через корзину не получилось вставить выпадающий список и смену стоимости доставки при выборе конкретной зоны доставки.

Пользователь: SL-421285
Здравствуйте, найдите в шаблоне Быстрый заказ код
<h2 class="legend ftheme-color btheme-color" title="Выберите удобный для вас способ доставки">Cпособ доставки</h2>
	  <div class="manufacturer-list">
		<div class="orderstageTwrp">
		  <table class="orderStageDeliveryListTable tablew fastOrd">
{% FOR order_delivery %}
												 <tbody rel="{order_delivery.ID}">
																 <tr {% IF order_delivery.first %}class="first"{% ENDIF %}>
								  <td class="cell1" rowspan="2">
										<input type="radio" id="deliveryId{order_delivery.ID}" name="form[delivery][id]" value="{order_delivery.ID}" class="required deliveryRadio inFastOrder"
										  {% IFNOT ORDER_FORM_DELIVERY_ID %}
												{% IF order_delivery.first %}
												  checked="checked"
												{% ENDIF %}
										  {% ELSEIF order_delivery.ID = ORDER_FORM_DELIVERY_ID %}
												checked="checked"
										  {% ENDIF %}
										/>
								  </td>
								  <td class="cell2">
										<label for="deliveryId{order_delivery.ID}">{order_delivery.NAME}</label>
								  </td>
								  <td rowspan="2" class="cell3 pricefield">
								   <span class="orderStageDeliveryDefaultPrice" {% IF order_delivery.ZONE_ID>0 %}style="display:none;"{% ENDIF%}>{order_delivery.END_PRICE | money_format}</span>
										<span class="orderStageDeliveryZonePrice" {% IF order_delivery.ZONE_ID<1 %}style="display:none;"{% ENDIF%}>{order_delivery.ZONE_END_PRICE | money_format}</span>
								  </td>
								</tr>
								<tr>
																 <td class="cell4">{order_delivery.DESC}</td>
																 </tr>
																 {% IFNOT order_delivery.zone_list_empty %}
																 <tr>
																				 <td></td>
																				 <td class="cell5">
																				 <select style="margin-left:0;" class="deliveryZoneRadio" data-deliveryid="{order_delivery.ID}" name="form[delivery][zone_id]" {% IF order_delivery.zone_list.ID = ORDER_FORM_DELIVERY_ZONE_ID %}class="required"{% ENDIF %}>
																								 <option value="0" data-price="{order_delivery.END_PRICE | number_format("0", ",", " ")}"> - выберите зону доставки - </option>
																								 {% FOR zone_list %}
																								 <option value="{order_delivery.zone_list.ID}" data-price="{order_delivery.zone_list.END_PRICE | number_format("0", ",", " ")}" {% IF order_delivery.zone_list.ID=ORDER_FORM_DELIVERY_ZONE_ID %}selected="selected"{% ENDIF %}>
																												 {order_delivery.zone_list.NAME}
																								 </option>
																								 {%ENDFOR%}
																				 </select>
																				 </td>
																 </tr>
																 {% ENDIF %}
												 </tbody>
												 {% ENDFOR %}
		  </table>
		</div>
	  </div>   
	 
	  {% FOR order_delivery %}
		{% IFNOT order_delivery.available_payment_list_empty  %}
		  <div class="quick_order_payment buttons" rel="{order_delivery.ID}" style="display: none;">
			<h2 class="legend ftheme-color btheme-color" title="Выберите удобный для вас способ оплаты заказа">Cпособ оплаты</h2>
			<div class="orderStagePaymentListTable basket border">
			  {% FOR available_payment_list %} 
			  <div>
				  <div><input type="radio" id="quickPaymentId{order_delivery.ID}_{order_delivery.available_payment_list.ID}" name="form[payment][id]" value="{order_delivery.available_payment_list.ID}"  class="required" {% IFNOT ORDER_FORM_PAYMENT_ID %}{% IF order_delivery.available_payment_list.first %}checked="checked"{% ENDIF %}{% ELSEIF order_delivery.available_payment_list.ID = ORDER_FORM_PAYMENT_ID %}checked="checked"{% ENDIF %}/></div>
				  <div>
					<label for="quickPaymentId{order_delivery.ID}_{order_delivery.available_payment_list.ID}">{order_delivery.available_payment_list.NAME}</label>
					<!-- Сообщение для пользователя -->
					{order_delivery.available_payment_list.MESSAGE}
				  </div>
			  </div>
			  {% ENDFOR %}
			</div>
		  </div>
		{% ENDIF %}
	  {% ENDFOR %}

замените на
  <div class="delivery">
		<h2 class="legend ftheme-color btheme-color" title="Выберите удобный для вас способ доставки">Cпособ доставки</h2>
		  <div class="manufacturer-list">
			<select class="mainSelect inputText">
			  {% FOR order_delivery %}
				<option id="deliveryId{order_delivery.ID}" delId="{order_delivery.ID}" name="form[delivery][id]" value="{order_delivery.ID}">{order_delivery.NAME}</option>
			  {%ENDFOR%}
			</select>
			<div class="zoneSelect">
			  {% FOR order_delivery %}
				{% IFNOT order_delivery.zone_list_empty %}				
				  {% FOR zone_list %}
					<option deliveryid="{order_delivery.ID}" id="deliveryZoneId{order_delivery.zone_list.ID}" name="form[delivery][zone_id]" value="{order_delivery.zone_list.ID}">{order_delivery.zone_list.NAME}</option>		   
				  {% ENDFOR %}
				{% ENDIF %}
			  {% ENDFOR %}
			</div>
			<div class="currentDeliveryDesc">
			  <div class="currentDeliveryPrice changer">
				Стоимость доставки:
				<span class="orderStageDeliveryZonePrice"><span class="changeprice"></span> {CURRENCY_NAME}</span>
			  </div>
			  <div class="currentDeliveryDescription"></div>
			</div>
		  </div>
		  <!-- Старый скрытый вариант способа доставки -->
		  <table class="orderStageDeliveryListTable table-box" style="display: none;">
			{% FOR order_delivery %}
			  <tbody class="deliveryOption" rel="{order_delivery.ID}">
				<tr {% IF order_delivery.first %}class="first"{% ENDIF %}>
				  <td class="cell1">
					<input type="radio" id="deliveryId{order_delivery.ID}" name="form[delivery][id]" value="{order_delivery.ID}" class="required deliveryRadio"
					{% IFNOT ORDER_FORM_DELIVERY_ID %}
					  {% IF order_delivery.first %}
						checked="checked"
					  {% ENDIF %}
					{% ELSEIF order_delivery.ID = ORDER_FORM_DELIVERY_ID %}
					  checked="checked"
					{% ENDIF %}
					  pricewithoutzones="{order_delivery.END_PRICE}"
					  pricewithzone="{order_delivery.ZONE_END_PRICE}"
					/>
					<div style="display:none;">{order_delivery.DESC}</div>
				  </td>
				  <td class="cell2">
					<label for="deliveryId{order_delivery.ID}">{order_delivery.NAME}</label>
					<p>{order_delivery.DESC}</p>
					{% IFNOT order_delivery.zone_list_empty %}
					  {% FOR zone_list %}
					  <div class="zones">
						<!-- Заголовок внутри метода доставки, появляется только один раз--> 
						{% IF order_delivery.zone_list.index=1 %}
						  <label for="deliveryId{order_delivery.ID}" class="zones-header">Зоны доставки</label><br />
						{% ENDIF %}
						<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 %}
						  price="{order_delivery.zone_list.END_PRICE}"
						/>
						<label class="orderStageDeliveryZoneLabel" for="deliveryZoneId{order_delivery.zone_list.ID}">
						  {order_delivery.zone_list.NAME}
						  <span class="deliveryZonePrice">{order_delivery.zone_list.END_PRICE | money_format}</span>
						</label>
					  </div>
					  {% ENDFOR %}
					{% ENDIF %}
				  </td>
				  <td class="cell3 pricefield">
					<span class="orderStageDeliveryDefaultPrice" {% IF order_delivery.ZONE_ID>0 %}style="display:none;"{% ENDIF%}>{order_delivery.END_PRICE | money_format}</span>
					<span class="orderStageDeliveryZonePrice" {% IF order_delivery.ZONE_ID<1 %}style="display:none;"{% ENDIF%}>{order_delivery.ZONE_END_PRICE | money_format}</span>
				  </td>
				</tr>
			  </tbody>
			{% ENDFOR %}
		  </table>
		</div>
		<!-- Способ оплаты -->
		<div class="payment">
		  {% FOR order_delivery %}
			{% IFNOT order_delivery.available_payment_list_empty  %}
			  <div class="quick_order_payment" rel="{order_delivery.ID}">
				<h2 class="legend ftheme-color btheme-color" title="Выберите удобный для вас способ доставки">Cпособ оплаты</h2>
				<div class="orderStagePaymentList">
				  <select class="paymentSelect inputText">
					{% FOR available_payment_list %}		 
					  <option type="radio" id="quickPaymentId{order_delivery.ID}_{order_delivery.available_payment_list.ID}" name="form[payment][id]" value="{order_delivery.available_payment_list.ID}" class="required" {% IFNOT ORDER_FORM_PAYMENT_ID %}{% IF order_delivery.available_payment_list.first %}checked="checked"{% ENDIF %}{% ELSEIF order_delivery.available_payment_list.ID = ORDER_FORM_PAYMENT_ID %}checked="checked"{% ENDIF %}></div>
						{order_delivery.available_payment_list.NAME}
					  </option>				
					{% ENDFOR %}
				  </select>
				  <div class="currentPaymentDesc">
					<div class="currentPaymentDescription"></div>
				  </div>
				</div>
			  </div>
			{% ENDIF %}
		  {% ENDFOR %}
		  <!-- Старый скрытый способ оплаты -->
		  <div class="hiddenRadio" style="display: none;">
			{% FOR order_delivery %}
			  {% IFNOT order_delivery.available_payment_list_empty  %}
				<div class="quick_order_payment hiddenpayment" rel="{order_delivery.ID}" style="display: none;">
				  <h3 class="title" title="Выберите удобный для вас способ оплаты заказа"><span>Cпособ оплаты</span></h3>
				  <div class="orderStagePaymentList">
					{% FOR available_payment_list %} 
					<div class="orderStagePayment">
					  <div class="cell1">
						<input type="radio" id="quickPaymentId{order_delivery.ID}_{order_delivery.available_payment_list.ID}" name="form[payment][id]" value="{order_delivery.available_payment_list.ID}"  class="paymentRadio required" {% IFNOT ORDER_FORM_PAYMENT_ID %}{% IF order_delivery.available_payment_list.first %}checked="checked"{% ENDIF %} {% ELSEIF order_delivery.available_payment_list.ID = ORDER_FORM_PAYMENT_ID %}checked="checked"{% ENDIF %}/>
						<div style="display:none;">{order_delivery.available_payment_list.MESSAGE}</div>
					  </div>
					  <div class="cell2">
						<label for="quickPaymentId{order_delivery.ID}_{order_delivery.available_payment_list.ID}">{order_delivery.available_payment_list.NAME}</label><br/>
						<!-- Сообщение для пользователя -->
						<span>{order_delivery.available_payment_list.MESSAGE}</span>
					  </div>
					</div>
					{% ENDFOR %}
				  </div>
				</div>
			  {% ENDIF %}
			{% ENDFOR %}
		  </div>
		</div>

далее найдите

$('.orderInfo select').change(function(){
var value = $(this).find('option:selected').attr('data-price');
$('tbody[rel="' + $(this).attr('data-deliveryid') + '"] .orderStageDeliveryDefaultPrice .num').text(value);
// Установка шарика на пункт зоны доставки
$('#deliveryId' + $(this).attr('data-deliveryid')).click();
});

замените на


$(function(){
	selectPayment = $('.quick_order_payment').css('display');
	$('.quick_order_payment').change(function(){
	  selectValue = $(this).find('option:checked').attr('value');
	  $('.hiddenRadio .quick_order_payment').each(function(){
		if($(this).css('display') == 'block'){
		  $(this).find('input[value=' + selectValue + ']').click();
		}
	  });
	});
   
	$('.mainSelect > option').attr('selected',false);
	$('.mainSelect > option:first-of-type').attr('selected',true);
   
	loadPage = $('.mainSelect').find('option:selected').attr('delid');
   
	$(function(){
	  $('.zoneSelect option').each(function(){
		id = $(this).attr('deliveryid');   
		select = $(this).parent('select').length;
		$('.zoneSelect select').addClass('inputText');
		if(select == 0){
		  $('.zoneSelect option[deliveryid="'+ id +'"]').wrapAll('<select del="'+ id +'"></select>');
		}
	  })
	  currentDelivery = $('.mainSelect option:checked').attr('delid');
	  $('div.zoneSelect select').each(function(){
		if($(this).attr('del') != currentDelivery){
		  $(this).hide();
		}
	  });
	});
   
	$('.mainSelect').change(function(){
	  selectedDelId = $(this).find('option:selected').attr('delid');  
	  $('.zoneSelect select').hide();
	  $('.zoneSelect select[del="'+selectedDelId+'"]').show();
	  $('.zoneSelect select option').attr('selected',false)
	  $('.zoneSelect select[del="'+selectedDelId+'"] option:first-of-type').attr('selected',true);
	  $('.deliveryOption .deliveryRadio[value="'+selectedDelId+'"]').click();
	 
	  WithoutZone = $('input.deliveryRadio:checked').attr('pricewithoutzones');
	  WithZone =  $('input.deliveryZoneRadio:checked').attr('price');
	 
	  if(WithZone > 0){
		startprice = WithZone;
	  }else{
		startprice = WithoutZone;
	  }
	  $('.changeprice').text(startprice);
	  $('.quick_order_payment').hide();
	  $('.quick_order_payment[rel="'+ selectedDelId +'"]').show();
	 
	  startInputId = $('input.deliveryRadio:checked').attr('value');
	  $('.hiddenpayment input').attr('checked',false);
	  $('.hiddenpayment[rel="'+startInputId+'"] input').each(function(){
		$(this).click();
		return false;
	  });
	  DeliveryDescription = $('input.deliveryRadio:checked').next('div').html();
	  $('.currentDeliveryDescription').html(DeliveryDescription);
	  PaymentDescription = $('input.paymentRadio:checked').next('div').html();
	  $('.currentPaymentDescription').html(PaymentDescription);
	  if ($('input.paymentRadio:checked').next('div').html().trim() === '') {
		$('.currentPaymentDesc').css("display", "none");
	  }else{
		$('.currentPaymentDesc').css("display", "block");
	  }
	});
  });
  
  $(function(){ 
	WithoutZone = $('input.deliveryRadio:checked').attr('pricewithoutzones');
	WithZone =  $('.deliveryZoneRadio:checked').attr('price');
	var startprice = 0;
	if(WithZone > 0){
	  startprice = WithZone;
	}else
	if(WithZone == 0 && WithoutZone == 0){
	  startprice = 0;
	}else{
	  startprice = WithoutZone;
	}
	$('.orderStageDeliveryZonePrice .changeprice').text(startprice);
	$('.hiddenpayment input').attr('checked',false);
	startInputId = $('input.deliveryRadio:checked').attr('value');
	$('.hiddenpayment[rel="'+startInputId+'"] input').each(function(){
	  $(this).click();
	  return false;
	});
	DeliveryDescription = $('input.deliveryRadio:checked').next('div').html();
	$('.currentDeliveryDescription').html(DeliveryDescription);
	PaymentDescription = $('input.paymentRadio:checked').next('div').html();
	$('.currentPaymentDescription').html(PaymentDescription);
	if ($('input.paymentRadio:checked').next('div').html().trim() === '') {
	  $('.currentPaymentDesc').css("display", "none");
	}else{
	  $('.currentPaymentDesc').css("display", "block");
	}
  });
 
  $('.paymentSelect').change(function(){
	selectedDelId = $(this).find('option:selected').attr('value');
	$('.orderStagePayment .paymentRadio[value="'+selectedDelId+'"]').click();
	PaymentDescription = $('input.paymentRadio:checked').next('div').html();
	$('.currentPaymentDescription').html(PaymentDescription);
	if ($('input.paymentRadio:checked').next('div').html().trim() === '') {
	  $('.currentPaymentDesc').css("display", "none");
	}else{
	  $('.currentPaymentDesc').css("display", "block");
	}
  });
	// Форма регистрации нового пользователя, при оформлении заказа



2. Найдите в шаблоне Оформление заказа код
<div class="manufacturer-list">
		<div class="orderstageTwrp">
		  <table class="orderStageDeliveryListTable tablew">
			{% FOR order_delivery %}
			  <tbody rel="{order_delivery.ID}">
				<tr {% IF order_delivery.first %}class="first"{% ENDIF %}>
				  <td class="cell1" rowspan="2">
					<input type="radio" id="deliveryId{order_delivery.ID}" name="form[delivery][id]" value="{order_delivery.ID}" class="required deliveryRadio"
					  {% IFNOT ORDER_FORM_DELIVERY_ID %}
						{% IF order_delivery.first %}
						  checked="checked"
						{% ENDIF %}
					  {% ELSEIF order_delivery.ID = ORDER_FORM_DELIVERY_ID %}
						checked="checked"
					  {% ENDIF %}
					/>
				  </td>
				  <td class="cell2">
					<label for="deliveryId{order_delivery.ID}">{order_delivery.NAME}</label>
				  </td>
				  <td rowspan="2" class="cell3 pricefield">
					<span class="orderStageDeliveryDefaultPrice" {% IF order_delivery.ZONE_ID>0 %}style="display:none;"{% ENDIF%}>{order_delivery.END_PRICE | money_format}</span>
					<span class="orderStageDeliveryZonePrice" {% IF order_delivery.ZONE_ID<1 %}style="display:none;"{% ENDIF%}>{order_delivery.ZONE_END_PRICE | money_format}</span>
				  </td>
				</tr>
				<tr>
				  <td class="cell4"><p style="color: #333;">{order_delivery.DESC}</p></td>
				</tr>
				{% IFNOT order_delivery.zone_list_empty %}
			   
				  {% FOR zone_list %}
				
					<tr class="zones incart">
					  <td></td>
					  <td>
						<!-- Заголовок внутри метода доставки, появляется только один раз--> 
						{% IF order_delivery.zone_list.index=1 %}
						  <label for="deliveryId{order_delivery.ID}" class="zones-header">Зоны доставки</label><br />
						{% ENDIF %}
						<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 class="orderStageDeliveryZoneLabel" for="deliveryZoneId{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 %}
				{% ENDIF %}
			  </tbody>
			{% ENDFOR %}
		  </table>
		</div>
	  </div>
замените на
<!-- Способ доставки-->
		<div class="delivery">
		  <h3 class="title" title="Выберите удобный для вас способ доставки"><span>Cпособ доставки</span></h3>
		  <div class="manufacturer-list">
			<select class="mainSelect inputText">
			  {% FOR order_delivery %}
				<option id="deliveryId{order_delivery.ID}" delId="{order_delivery.ID}" name="form[delivery][id]" value="{order_delivery.ID}">{order_delivery.NAME}</option>
			  {%ENDFOR%}
			</select>
			<div class="zoneSelect">
			  {% FOR order_delivery %}
				{% IFNOT order_delivery.zone_list_empty %}				
				  {% FOR zone_list %}
					<option deliveryid="{order_delivery.ID}" id="deliveryZoneId{order_delivery.zone_list.ID}" name="form[delivery][zone_id]" value="{order_delivery.zone_list.ID}">{order_delivery.zone_list.NAME}</option>		   
				  {% ENDFOR %}
				{% ENDIF %}
			  {% ENDFOR %}
			</div>
			<div class="currentDeliveryDesc">
			  <div class="currentDeliveryPrice changer">
				Стоимость доставки:
				<span class="orderStageDeliveryZonePrice"><span class="changeprice"></span> {CURRENCY_NAME}</span>
			  </div>
			  <div class="currentDeliveryDescription"></div>
			</div>
		  </div>
		  <!-- Старый скрытый вариант способа доставки -->
		  <table class="orderStageDeliveryListTable table-box" style="display: none;">
			{% FOR order_delivery %}
			  <tbody class="deliveryOption" rel="{order_delivery.ID}">
				<tr {% IF order_delivery.first %}class="first"{% ENDIF %}>
				  <td class="cell1">
					<input type="radio" id="deliveryId{order_delivery.ID}" name="form[delivery][id]" value="{order_delivery.ID}" class="required deliveryRadio"
					{% IFNOT ORDER_FORM_DELIVERY_ID %}
					  {% IF order_delivery.first %}
						checked="checked"
					  {% ENDIF %}
					{% ELSEIF order_delivery.ID = ORDER_FORM_DELIVERY_ID %}
					  checked="checked"
					{% ENDIF %}
					  pricewithoutzones="{order_delivery.END_PRICE}"
					  pricewithzone="{order_delivery.ZONE_END_PRICE}"
					/>
					<div style="display:none;">{order_delivery.DESC}</div>
				  </td>
				  <td class="cell2">
					<label for="deliveryId{order_delivery.ID}">{order_delivery.NAME}</label>
					<p>{order_delivery.DESC}</p>
					{% IFNOT order_delivery.zone_list_empty %}
					  {% FOR zone_list %}
					  <div class="zones">
						<!-- Заголовок внутри метода доставки, появляется только один раз--> 
						{% IF order_delivery.zone_list.index=1 %}
						  <label for="deliveryId{order_delivery.ID}" class="zones-header">Зоны доставки</label><br />
						{% ENDIF %}
						<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 %}
						  price="{order_delivery.zone_list.END_PRICE}"
						/>
						<label class="orderStageDeliveryZoneLabel" for="deliveryZoneId{order_delivery.zone_list.ID}">
						  {order_delivery.zone_list.NAME}
						  <span class="deliveryZonePrice">{order_delivery.zone_list.END_PRICE | money_format}</span>
						</label>
					  </div>
					  {% ENDFOR %}
					{% ENDIF %}
				  </td>
				  <td class="cell3 pricefield">
					<span class="orderStageDeliveryDefaultPrice" {% IF order_delivery.ZONE_ID>0 %}style="display:none;"{% ENDIF%}>{order_delivery.END_PRICE | money_format}</span>
					<span class="orderStageDeliveryZonePrice" {% IF order_delivery.ZONE_ID<1 %}style="display:none;"{% ENDIF%}>{order_delivery.ZONE_END_PRICE | money_format}</span>
				  </td>
				</tr>
			  </tbody>
			{% ENDFOR %}
		  </table>
		</div>

далее в конец файла main.js добавьте
$(document).ready(function(){
$(function(){
	selectPayment = $('.quick_order_payment').css('display');
	$('.quick_order_payment').change(function(){
	  selectValue = $(this).find('option:checked').attr('value');
	  $('.hiddenRadio .quick_order_payment').each(function(){
		if($(this).css('display') == 'block'){
		  $(this).find('input[value=' + selectValue + ']').click();
		}
	  });
	});
   
	$('.mainSelect > option').attr('selected',false);
	$('.mainSelect > option:first-of-type').attr('selected',true);
   
	loadPage = $('.mainSelect').find('option:selected').attr('delid');
   
	$(function(){
	  $('.zoneSelect option').each(function(){
		id = $(this).attr('deliveryid');   
		select = $(this).parent('select').length;
		$('.zoneSelect select').addClass('inputText');
		if(select == 0){
		  $('.zoneSelect option[deliveryid="'+ id +'"]').wrapAll('<select del="'+ id +'"></select>');
		}
	  })
	  currentDelivery = $('.mainSelect option:checked').attr('delid');
	  $('div.zoneSelect select').each(function(){
		if($(this).attr('del') != currentDelivery){
		  $(this).hide();
		}
	  });
	});
   
	$('.mainSelect').change(function(){
	  selectedDelId = $(this).find('option:selected').attr('delid');  
	  $('.zoneSelect select').hide();
	  $('.zoneSelect select[del="'+selectedDelId+'"]').show();
	  $('.zoneSelect select option').attr('selected',false)
	  $('.zoneSelect select[del="'+selectedDelId+'"] option:first-of-type').attr('selected',true);
	  $('.deliveryOption .deliveryRadio[value="'+selectedDelId+'"]').click();
	 
	  WithoutZone = $('input.deliveryRadio:checked').attr('pricewithoutzones');
	  WithZone =  $('input.deliveryZoneRadio:checked').attr('price');
	 
	  if(WithZone > 0){
		startprice = WithZone;
	  }else{
		startprice = WithoutZone;
	  }
	  $('.changeprice').text(startprice);
	 
	  DeliveryDescription = $('input.deliveryRadio:checked').next('div').html();
	  $('.currentDeliveryDescription').html(DeliveryDescription);
	
	});
  });
  
  $(function(){ 
	WithoutZone = $('input.deliveryRadio:checked').attr('pricewithoutzones');
	WithZone =  $('.deliveryZoneRadio:checked').attr('price');
	var startprice = 0;
	if(WithZone > 0){
	  startprice = WithZone;
	}else
	if(WithZone == 0 && WithoutZone == 0){
	  startprice = 0;
	}else{
	  startprice = WithoutZone;
	}
	$('.orderStageDeliveryZonePrice .changeprice').text(startprice);
	$('.hiddenpayment input').attr('checked',false);
  
	DeliveryDescription = $('input.deliveryRadio:checked').next('div').html();
	$('.currentDeliveryDescription').html(DeliveryDescription);
  
  });
});


#11 Paparam

Paparam

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 118 сообщений

Отправлено 08 Ноябрь 2017 - 16:51

Просмотр сообщенияИрина345 (08 Ноябрь 2017 - 13:35) писал:

Здравствуйте, найдите в шаблоне Быстрый заказ код
<h2 class="legend ftheme-color btheme-color" title="Выберите удобный для вас способ доставки">Cпособ доставки</h2>
	 <div class="manufacturer-list">
	 <div class="orderstageTwrp">
		 <table class="orderStageDeliveryListTable tablew fastOrd">
{% FOR order_delivery %}
												 <tbody rel="{order_delivery.ID}">
																 <tr {% IF order_delivery.first %}class="first"{% ENDIF %}>
								 <td class="cell1" rowspan="2">
									 <input type="radio" id="deliveryId{order_delivery.ID}" name="form[delivery][id]" value="{order_delivery.ID}" class="required deliveryRadio inFastOrder"
										 {% IFNOT ORDER_FORM_DELIVERY_ID %}
											 {% IF order_delivery.first %}
												 checked="checked"
											 {% ENDIF %}
										 {% ELSEIF order_delivery.ID = ORDER_FORM_DELIVERY_ID %}
											 checked="checked"
										 {% ENDIF %}
									 />
								 </td>
								 <td class="cell2">
									 <label for="deliveryId{order_delivery.ID}">{order_delivery.NAME}</label>
								 </td>
								 <td rowspan="2" class="cell3 pricefield">
								 <span class="orderStageDeliveryDefaultPrice" {% IF order_delivery.ZONE_ID>0 %}style="display:none;"{% ENDIF%}>{order_delivery.END_PRICE | money_format}</span>
									 <span class="orderStageDeliveryZonePrice" {% IF order_delivery.ZONE_ID<1 %}style="display:none;"{% ENDIF%}>{order_delivery.ZONE_END_PRICE | money_format}</span>
								 </td>
							 </tr>
							 <tr>
																 <td class="cell4">{order_delivery.DESC}</td>
																 </tr>
																 {% IFNOT order_delivery.zone_list_empty %}
																 <tr>
																				 <td></td>
																				 <td class="cell5">
																				 <select style="margin-left:0;" class="deliveryZoneRadio" data-deliveryid="{order_delivery.ID}" name="form[delivery][zone_id]" {% IF order_delivery.zone_list.ID = ORDER_FORM_DELIVERY_ZONE_ID %}class="required"{% ENDIF %}>
																								 <option value="0" data-price="{order_delivery.END_PRICE | number_format("0", ",", " ")}"> - выберите зону доставки - </option>
																								 {% FOR zone_list %}
																								 <option value="{order_delivery.zone_list.ID}" data-price="{order_delivery.zone_list.END_PRICE | number_format("0", ",", " ")}" {% IF order_delivery.zone_list.ID=ORDER_FORM_DELIVERY_ZONE_ID %}selected="selected"{% ENDIF %}>
																												 {order_delivery.zone_list.NAME}
																								 </option>
																								 {%ENDFOR%}
																				 </select>
																				 </td>
																 </tr>
																 {% ENDIF %}
												 </tbody>
												 {% ENDFOR %}
		 </table>
	 </div>
	 </div>
	
	 {% FOR order_delivery %}
	 {% IFNOT order_delivery.available_payment_list_empty %}
		 <div class="quick_order_payment buttons" rel="{order_delivery.ID}" style="display: none;">
		 <h2 class="legend ftheme-color btheme-color" title="Выберите удобный для вас способ оплаты заказа">Cпособ оплаты</h2>
		 <div class="orderStagePaymentListTable basket border">
			 {% FOR available_payment_list %}
			 <div>
				 <div><input type="radio" id="quickPaymentId{order_delivery.ID}_{order_delivery.available_payment_list.ID}" name="form[payment][id]" value="{order_delivery.available_payment_list.ID}" class="required" {% IFNOT ORDER_FORM_PAYMENT_ID %}{% IF order_delivery.available_payment_list.first %}checked="checked"{% ENDIF %}{% ELSEIF order_delivery.available_payment_list.ID = ORDER_FORM_PAYMENT_ID %}checked="checked"{% ENDIF %}/></div>
				 <div>
				 <label for="quickPaymentId{order_delivery.ID}_{order_delivery.available_payment_list.ID}">{order_delivery.available_payment_list.NAME}</label>
				 <!-- Сообщение для пользователя -->
				 {order_delivery.available_payment_list.MESSAGE}
				 </div>
			 </div>
			 {% ENDFOR %}
		 </div>
		 </div>
	 {% ENDIF %}
	 {% ENDFOR %}

замените на
<div class="delivery">
	 <h2 class="legend ftheme-color btheme-color" title="Выберите удобный для вас способ доставки">Cпособ доставки</h2>
		 <div class="manufacturer-list">
		 <select class="mainSelect inputText">
			 {% FOR order_delivery %}
			 <option id="deliveryId{order_delivery.ID}" delId="{order_delivery.ID}" name="form[delivery][id]" value="{order_delivery.ID}">{order_delivery.NAME}</option>
			 {%ENDFOR%}
		 </select>
		 <div class="zoneSelect">
			 {% FOR order_delivery %}
			 {% IFNOT order_delivery.zone_list_empty %}				
				 {% FOR zone_list %}
				 <option deliveryid="{order_delivery.ID}" id="deliveryZoneId{order_delivery.zone_list.ID}" name="form[delivery][zone_id]" value="{order_delivery.zone_list.ID}">{order_delivery.zone_list.NAME}</option>		
				 {% ENDFOR %}
			 {% ENDIF %}
			 {% ENDFOR %}
		 </div>
		 <div class="currentDeliveryDesc">
			 <div class="currentDeliveryPrice changer">
			 Стоимость доставки:
			 <span class="orderStageDeliveryZonePrice"><span class="changeprice"></span> {CURRENCY_NAME}</span>
			 </div>
			 <div class="currentDeliveryDescription"></div>
		 </div>
		 </div>
		 <!-- Старый скрытый вариант способа доставки -->
		 <table class="orderStageDeliveryListTable table-box" style="display: none;">
		 {% FOR order_delivery %}
			 <tbody class="deliveryOption" rel="{order_delivery.ID}">
			 <tr {% IF order_delivery.first %}class="first"{% ENDIF %}>
				 <td class="cell1">
				 <input type="radio" id="deliveryId{order_delivery.ID}" name="form[delivery][id]" value="{order_delivery.ID}" class="required deliveryRadio"
				 {% IFNOT ORDER_FORM_DELIVERY_ID %}
					 {% IF order_delivery.first %}
					 checked="checked"
					 {% ENDIF %}
				 {% ELSEIF order_delivery.ID = ORDER_FORM_DELIVERY_ID %}
					 checked="checked"
				 {% ENDIF %}
					 pricewithoutzones="{order_delivery.END_PRICE}"
					 pricewithzone="{order_delivery.ZONE_END_PRICE}"
				 />
				 <div style="display:none;">{order_delivery.DESC}</div>
				 </td>
				 <td class="cell2">
				 <label for="deliveryId{order_delivery.ID}">{order_delivery.NAME}</label>
				 <p>{order_delivery.DESC}</p>
				 {% IFNOT order_delivery.zone_list_empty %}
					 {% FOR zone_list %}
					 <div class="zones">
					 <!-- Заголовок внутри метода доставки, появляется только один раз-->
					 {% IF order_delivery.zone_list.index=1 %}
						 <label for="deliveryId{order_delivery.ID}" class="zones-header">Зоны доставки</label><br />
					 {% ENDIF %}
					 <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 %}
						 price="{order_delivery.zone_list.END_PRICE}"
					 />
					 <label class="orderStageDeliveryZoneLabel" for="deliveryZoneId{order_delivery.zone_list.ID}">
						 {order_delivery.zone_list.NAME}
						 <span class="deliveryZonePrice">{order_delivery.zone_list.END_PRICE | money_format}</span>
					 </label>
					 </div>
					 {% ENDFOR %}
				 {% ENDIF %}
				 </td>
				 <td class="cell3 pricefield">
				 <span class="orderStageDeliveryDefaultPrice" {% IF order_delivery.ZONE_ID>0 %}style="display:none;"{% ENDIF%}>{order_delivery.END_PRICE | money_format}</span>
				 <span class="orderStageDeliveryZonePrice" {% IF order_delivery.ZONE_ID<1 %}style="display:none;"{% ENDIF%}>{order_delivery.ZONE_END_PRICE | money_format}</span>
				 </td>
			 </tr>
			 </tbody>
		 {% ENDFOR %}
		 </table>
	 </div>
	 <!-- Способ оплаты -->
	 <div class="payment">
		 {% FOR order_delivery %}
		 {% IFNOT order_delivery.available_payment_list_empty %}
			 <div class="quick_order_payment" rel="{order_delivery.ID}">
			 <h2 class="legend ftheme-color btheme-color" title="Выберите удобный для вас способ доставки">Cпособ оплаты</h2>
			 <div class="orderStagePaymentList">
				 <select class="paymentSelect inputText">
				 {% FOR available_payment_list %}		
					 <option type="radio" id="quickPaymentId{order_delivery.ID}_{order_delivery.available_payment_list.ID}" name="form[payment][id]" value="{order_delivery.available_payment_list.ID}" class="required" {% IFNOT ORDER_FORM_PAYMENT_ID %}{% IF order_delivery.available_payment_list.first %}checked="checked"{% ENDIF %}{% ELSEIF order_delivery.available_payment_list.ID = ORDER_FORM_PAYMENT_ID %}checked="checked"{% ENDIF %}></div>
					 {order_delivery.available_payment_list.NAME}
					 </option>				
				 {% ENDFOR %}
				 </select>
				 <div class="currentPaymentDesc">
				 <div class="currentPaymentDescription"></div>
				 </div>
			 </div>
			 </div>
		 {% ENDIF %}
		 {% ENDFOR %}
		 <!-- Старый скрытый способ оплаты -->
		 <div class="hiddenRadio" style="display: none;">
		 {% FOR order_delivery %}
			 {% IFNOT order_delivery.available_payment_list_empty %}
			 <div class="quick_order_payment hiddenpayment" rel="{order_delivery.ID}" style="display: none;">
				 <h3 class="title" title="Выберите удобный для вас способ оплаты заказа"><span>Cпособ оплаты</span></h3>
				 <div class="orderStagePaymentList">
				 {% FOR available_payment_list %}
				 <div class="orderStagePayment">
					 <div class="cell1">
					 <input type="radio" id="quickPaymentId{order_delivery.ID}_{order_delivery.available_payment_list.ID}" name="form[payment][id]" value="{order_delivery.available_payment_list.ID}" class="paymentRadio required" {% IFNOT ORDER_FORM_PAYMENT_ID %}{% IF order_delivery.available_payment_list.first %}checked="checked"{% ENDIF %} {% ELSEIF order_delivery.available_payment_list.ID = ORDER_FORM_PAYMENT_ID %}checked="checked"{% ENDIF %}/>
					 <div style="display:none;">{order_delivery.available_payment_list.MESSAGE}</div>
					 </div>
					 <div class="cell2">
					 <label for="quickPaymentId{order_delivery.ID}_{order_delivery.available_payment_list.ID}">{order_delivery.available_payment_list.NAME}</label><br/>
					 <!-- Сообщение для пользователя -->
					 <span>{order_delivery.available_payment_list.MESSAGE}</span>
					 </div>
				 </div>
				 {% ENDFOR %}
				 </div>
			 </div>
			 {% ENDIF %}
		 {% ENDFOR %}
		 </div>
	 </div>

далее найдите

$('.orderInfo select').change(function(){
var value = $(this).find('option:selected').attr('data-price');
$('tbody[rel="' + $(this).attr('data-deliveryid') + '"] .orderStageDeliveryDefaultPrice .num').text(value);
// Установка шарика на пункт зоны доставки
$('#deliveryId' + $(this).attr('data-deliveryid')).click();
});

замените на


$(function(){
selectPayment = $('.quick_order_payment').css('display');
$('.quick_order_payment').change(function(){
	 selectValue = $(this).find('option:checked').attr('value');
	 $('.hiddenRadio .quick_order_payment').each(function(){
	 if($(this).css('display') == 'block'){
		 $(this).find('input[value=' + selectValue + ']').click();
	 }
	 });
});

$('.mainSelect > option').attr('selected',false);
$('.mainSelect > option:first-of-type').attr('selected',true);

loadPage = $('.mainSelect').find('option:selected').attr('delid');

$(function(){
	 $('.zoneSelect option').each(function(){
	 id = $(this).attr('deliveryid');
	 select = $(this).parent('select').length;
	 $('.zoneSelect select').addClass('inputText');
	 if(select == 0){
		 $('.zoneSelect option[deliveryid="'+ id +'"]').wrapAll('<select del="'+ id +'"></select>');
	 }
	 })
	 currentDelivery = $('.mainSelect option:checked').attr('delid');
	 $('div.zoneSelect select').each(function(){
	 if($(this).attr('del') != currentDelivery){
		 $(this).hide();
	 }
	 });
});

$('.mainSelect').change(function(){
	 selectedDelId = $(this).find('option:selected').attr('delid');
	 $('.zoneSelect select').hide();
	 $('.zoneSelect select[del="'+selectedDelId+'"]').show();
	 $('.zoneSelect select option').attr('selected',false)
	 $('.zoneSelect select[del="'+selectedDelId+'"] option:first-of-type').attr('selected',true);
	 $('.deliveryOption .deliveryRadio[value="'+selectedDelId+'"]').click();
	
	 WithoutZone = $('input.deliveryRadio:checked').attr('pricewithoutzones');
	 WithZone = $('input.deliveryZoneRadio:checked').attr('price');
	
	 if(WithZone > 0){
	 startprice = WithZone;
	 }else{
	 startprice = WithoutZone;
	 }
	 $('.changeprice').text(startprice);
	 $('.quick_order_payment').hide();
	 $('.quick_order_payment[rel="'+ selectedDelId +'"]').show();
	
	 startInputId = $('input.deliveryRadio:checked').attr('value');
	 $('.hiddenpayment input').attr('checked',false);
	 $('.hiddenpayment[rel="'+startInputId+'"] input').each(function(){
	 $(this).click();
	 return false;
	 });
	 DeliveryDescription = $('input.deliveryRadio:checked').next('div').html();
	 $('.currentDeliveryDescription').html(DeliveryDescription);
	 PaymentDescription = $('input.paymentRadio:checked').next('div').html();
	 $('.currentPaymentDescription').html(PaymentDescription);
	 if ($('input.paymentRadio:checked').next('div').html().trim() === '') {
	 $('.currentPaymentDesc').css("display", "none");
	 }else{
	 $('.currentPaymentDesc').css("display", "block");
	 }
});
});

$(function(){
WithoutZone = $('input.deliveryRadio:checked').attr('pricewithoutzones');
WithZone = $('.deliveryZoneRadio:checked').attr('price');
var startprice = 0;
if(WithZone > 0){
	 startprice = WithZone;
}else
if(WithZone == 0 && WithoutZone == 0){
	 startprice = 0;
}else{
	 startprice = WithoutZone;
}
$('.orderStageDeliveryZonePrice .changeprice').text(startprice);
$('.hiddenpayment input').attr('checked',false);
startInputId = $('input.deliveryRadio:checked').attr('value');
$('.hiddenpayment[rel="'+startInputId+'"] input').each(function(){
	 $(this).click();
	 return false;
});
DeliveryDescription = $('input.deliveryRadio:checked').next('div').html();
$('.currentDeliveryDescription').html(DeliveryDescription);
PaymentDescription = $('input.paymentRadio:checked').next('div').html();
$('.currentPaymentDescription').html(PaymentDescription);
if ($('input.paymentRadio:checked').next('div').html().trim() === '') {
	 $('.currentPaymentDesc').css("display", "none");
}else{
	 $('.currentPaymentDesc').css("display", "block");
}
});

$('.paymentSelect').change(function(){
selectedDelId = $(this).find('option:selected').attr('value');
$('.orderStagePayment .paymentRadio[value="'+selectedDelId+'"]').click();
PaymentDescription = $('input.paymentRadio:checked').next('div').html();
$('.currentPaymentDescription').html(PaymentDescription);
if ($('input.paymentRadio:checked').next('div').html().trim() === '') {
	 $('.currentPaymentDesc').css("display", "none");
}else{
	 $('.currentPaymentDesc').css("display", "block");
}
});
// Форма регистрации нового пользователя, при оформлении заказа



2. Найдите в шаблоне Оформление заказа код
<div class="manufacturer-list">
	 <div class="orderstageTwrp">
		 <table class="orderStageDeliveryListTable tablew">
		 {% FOR order_delivery %}
			 <tbody rel="{order_delivery.ID}">
			 <tr {% IF order_delivery.first %}class="first"{% ENDIF %}>
				 <td class="cell1" rowspan="2">
				 <input type="radio" id="deliveryId{order_delivery.ID}" name="form[delivery][id]" value="{order_delivery.ID}" class="required deliveryRadio"
					 {% IFNOT ORDER_FORM_DELIVERY_ID %}
					 {% IF order_delivery.first %}
						 checked="checked"
					 {% ENDIF %}
					 {% ELSEIF order_delivery.ID = ORDER_FORM_DELIVERY_ID %}
					 checked="checked"
					 {% ENDIF %}
				 />
				 </td>
				 <td class="cell2">
				 <label for="deliveryId{order_delivery.ID}">{order_delivery.NAME}</label>
				 </td>
				 <td rowspan="2" class="cell3 pricefield">
				 <span class="orderStageDeliveryDefaultPrice" {% IF order_delivery.ZONE_ID>0 %}style="display:none;"{% ENDIF%}>{order_delivery.END_PRICE | money_format}</span>
				 <span class="orderStageDeliveryZonePrice" {% IF order_delivery.ZONE_ID<1 %}style="display:none;"{% ENDIF%}>{order_delivery.ZONE_END_PRICE | money_format}</span>
				 </td>
			 </tr>
			 <tr>
				 <td class="cell4"><p style="color: #333;">{order_delivery.DESC}</p></td>
			 </tr>
			 {% IFNOT order_delivery.zone_list_empty %}
			
				 {% FOR zone_list %}
				
				 <tr class="zones incart">
					 <td></td>
					 <td>
					 <!-- Заголовок внутри метода доставки, появляется только один раз-->
					 {% IF order_delivery.zone_list.index=1 %}
						 <label for="deliveryId{order_delivery.ID}" class="zones-header">Зоны доставки</label><br />
					 {% ENDIF %}
					 <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 class="orderStageDeliveryZoneLabel" for="deliveryZoneId{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 %}
			 {% ENDIF %}
			 </tbody>
		 {% ENDFOR %}
		 </table>
	 </div>
	 </div>
замените на
<!-- Способ доставки-->
	 <div class="delivery">
		 <h3 class="title" title="Выберите удобный для вас способ доставки"><span>Cпособ доставки</span></h3>
		 <div class="manufacturer-list">
		 <select class="mainSelect inputText">
			 {% FOR order_delivery %}
			 <option id="deliveryId{order_delivery.ID}" delId="{order_delivery.ID}" name="form[delivery][id]" value="{order_delivery.ID}">{order_delivery.NAME}</option>
			 {%ENDFOR%}
		 </select>
		 <div class="zoneSelect">
			 {% FOR order_delivery %}
			 {% IFNOT order_delivery.zone_list_empty %}				
				 {% FOR zone_list %}
				 <option deliveryid="{order_delivery.ID}" id="deliveryZoneId{order_delivery.zone_list.ID}" name="form[delivery][zone_id]" value="{order_delivery.zone_list.ID}">{order_delivery.zone_list.NAME}</option>		
				 {% ENDFOR %}
			 {% ENDIF %}
			 {% ENDFOR %}
		 </div>
		 <div class="currentDeliveryDesc">
			 <div class="currentDeliveryPrice changer">
			 Стоимость доставки:
			 <span class="orderStageDeliveryZonePrice"><span class="changeprice"></span> {CURRENCY_NAME}</span>
			 </div>
			 <div class="currentDeliveryDescription"></div>
		 </div>
		 </div>
		 <!-- Старый скрытый вариант способа доставки -->
		 <table class="orderStageDeliveryListTable table-box" style="display: none;">
		 {% FOR order_delivery %}
			 <tbody class="deliveryOption" rel="{order_delivery.ID}">
			 <tr {% IF order_delivery.first %}class="first"{% ENDIF %}>
				 <td class="cell1">
				 <input type="radio" id="deliveryId{order_delivery.ID}" name="form[delivery][id]" value="{order_delivery.ID}" class="required deliveryRadio"
				 {% IFNOT ORDER_FORM_DELIVERY_ID %}
					 {% IF order_delivery.first %}
					 checked="checked"
					 {% ENDIF %}
				 {% ELSEIF order_delivery.ID = ORDER_FORM_DELIVERY_ID %}
					 checked="checked"
				 {% ENDIF %}
					 pricewithoutzones="{order_delivery.END_PRICE}"
					 pricewithzone="{order_delivery.ZONE_END_PRICE}"
				 />
				 <div style="display:none;">{order_delivery.DESC}</div>
				 </td>
				 <td class="cell2">
				 <label for="deliveryId{order_delivery.ID}">{order_delivery.NAME}</label>
				 <p>{order_delivery.DESC}</p>
				 {% IFNOT order_delivery.zone_list_empty %}
					 {% FOR zone_list %}
					 <div class="zones">
					 <!-- Заголовок внутри метода доставки, появляется только один раз-->
					 {% IF order_delivery.zone_list.index=1 %}
						 <label for="deliveryId{order_delivery.ID}" class="zones-header">Зоны доставки</label><br />
					 {% ENDIF %}
					 <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 %}
						 price="{order_delivery.zone_list.END_PRICE}"
					 />
					 <label class="orderStageDeliveryZoneLabel" for="deliveryZoneId{order_delivery.zone_list.ID}">
						 {order_delivery.zone_list.NAME}
						 <span class="deliveryZonePrice">{order_delivery.zone_list.END_PRICE | money_format}</span>
					 </label>
					 </div>
					 {% ENDFOR %}
				 {% ENDIF %}
				 </td>
				 <td class="cell3 pricefield">
				 <span class="orderStageDeliveryDefaultPrice" {% IF order_delivery.ZONE_ID>0 %}style="display:none;"{% ENDIF%}>{order_delivery.END_PRICE | money_format}</span>
				 <span class="orderStageDeliveryZonePrice" {% IF order_delivery.ZONE_ID<1 %}style="display:none;"{% ENDIF%}>{order_delivery.ZONE_END_PRICE | money_format}</span>
				 </td>
			 </tr>
			 </tbody>
		 {% ENDFOR %}
		 </table>
	 </div>

далее в конец файла main.js добавьте
$(document).ready(function(){
$(function(){
selectPayment = $('.quick_order_payment').css('display');
$('.quick_order_payment').change(function(){
	 selectValue = $(this).find('option:checked').attr('value');
	 $('.hiddenRadio .quick_order_payment').each(function(){
	 if($(this).css('display') == 'block'){
		 $(this).find('input[value=' + selectValue + ']').click();
	 }
	 });
});

$('.mainSelect > option').attr('selected',false);
$('.mainSelect > option:first-of-type').attr('selected',true);

loadPage = $('.mainSelect').find('option:selected').attr('delid');

$(function(){
	 $('.zoneSelect option').each(function(){
	 id = $(this).attr('deliveryid');
	 select = $(this).parent('select').length;
	 $('.zoneSelect select').addClass('inputText');
	 if(select == 0){
		 $('.zoneSelect option[deliveryid="'+ id +'"]').wrapAll('<select del="'+ id +'"></select>');
	 }
	 })
	 currentDelivery = $('.mainSelect option:checked').attr('delid');
	 $('div.zoneSelect select').each(function(){
	 if($(this).attr('del') != currentDelivery){
		 $(this).hide();
	 }
	 });
});

$('.mainSelect').change(function(){
	 selectedDelId = $(this).find('option:selected').attr('delid');
	 $('.zoneSelect select').hide();
	 $('.zoneSelect select[del="'+selectedDelId+'"]').show();
	 $('.zoneSelect select option').attr('selected',false)
	 $('.zoneSelect select[del="'+selectedDelId+'"] option:first-of-type').attr('selected',true);
	 $('.deliveryOption .deliveryRadio[value="'+selectedDelId+'"]').click();
	
	 WithoutZone = $('input.deliveryRadio:checked').attr('pricewithoutzones');
	 WithZone = $('input.deliveryZoneRadio:checked').attr('price');
	
	 if(WithZone > 0){
	 startprice = WithZone;
	 }else{
	 startprice = WithoutZone;
	 }
	 $('.changeprice').text(startprice);
	
	 DeliveryDescription = $('input.deliveryRadio:checked').next('div').html();
	 $('.currentDeliveryDescription').html(DeliveryDescription);
	
});
});

$(function(){
WithoutZone = $('input.deliveryRadio:checked').attr('pricewithoutzones');
WithZone = $('.deliveryZoneRadio:checked').attr('price');
var startprice = 0;
if(WithZone > 0){
	 startprice = WithZone;
}else
if(WithZone == 0 && WithoutZone == 0){
	 startprice = 0;
}else{
	 startprice = WithoutZone;
}
$('.orderStageDeliveryZonePrice .changeprice').text(startprice);
$('.hiddenpayment input').attr('checked',false);

DeliveryDescription = $('input.deliveryRadio:checked').next('div').html();
$('.currentDeliveryDescription').html(DeliveryDescription);

});
});

Большое спасибо за ответ!
Дело сдвинулось с мертвой точки в положительную сторону) Теперь все варианты доставки поместились в выпадающий список.Но возникли некоторые проблемы.

1. При оформлении быстрого заказа и выборе способе доставки, конечная цена доставки становится равна цене ПЕРВОЙ зоны доставки. Т,Е, если мне например нужна 2 зона доставки, но уже с другой ценой, итог все равно выдает стоимость 1 зоны (скрины 3 и 4)

2.При оформлении заказа из корзины и выборе варианта доставки, окончательная цена не меняется от выбранной зоны доставки (скрины 1 и 2).

Прикрепленные изображения

  • 1.png
  • 2.png
  • 3.png
  • 4.png


#12 Paparam

Paparam

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 118 сообщений

Отправлено 13 Ноябрь 2017 - 12:45

ау

#13 Ирина345

Ирина345

    Активный участник

  • Модераторы
  • 5 709 сообщений

Отправлено 17 Ноябрь 2017 - 11:04

Просмотр сообщенияPaparam (08 Ноябрь 2017 - 16:51) писал:

Большое спасибо за ответ!
Дело сдвинулось с мертвой точки в положительную сторону) Теперь все варианты доставки поместились в выпадающий список.Но возникли некоторые проблемы.

1. При оформлении быстрого заказа и выборе способе доставки, конечная цена доставки становится равна цене ПЕРВОЙ зоны доставки. Т,Е, если мне например нужна 2 зона доставки, но уже с другой ценой, итог все равно выдает стоимость 1 зоны (скрины 3 и 4)

2.При оформлении заказа из корзины и выборе варианта доставки, окончательная цена не меняется от выбранной зоны доставки (скрины 1 и 2).
Здравствуйте, извините за долгий ответ.На данный момент у Вас отсутствуют изменения по инструкции выше.
Если Вы их делали на бекапе, то уточните а какое число это можно посмотреть.

#14 Paparam

Paparam

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 118 сообщений

Отправлено 17 Ноябрь 2017 - 11:16

Просмотр сообщенияИрина345 (17 Ноябрь 2017 - 11:04) писал:

Здравствуйте, извините за долгий ответ.На данный момент у Вас отсутствуют изменения по инструкции выше.
Если Вы их делали на бекапе, то уточните а какое число это можно посмотреть.

Бекап на 09.11.17. Все сохранено как в инструкции. Единственный момент, я удалил все зоны доставки ( просто прохожу проверку на яндекс маркете, мало ли).

#15 Stasya

Stasya

    Активный участник

  • Модератоpы
  • 4 007 сообщений

Отправлено 23 Ноябрь 2017 - 15:43

Просмотр сообщенияPaparam (17 Ноябрь 2017 - 11:16) писал:

Бекап на 09.11.17. Все сохранено как в инструкции. Единственный момент, я удалил все зоны доставки ( просто прохожу проверку на яндекс маркете, мало ли).
Здравствуйте. В файле main.js найдите код
$('.mainSelect').change(function(){
		  selectedDelId = $(this).find('option:selected').attr('delid'); 
		  $('.zoneSelect select').hide();
		  $('.zoneSelect select[del="'+selectedDelId+'"]').show();
		  $('.zoneSelect select option').attr('selected',false)
		  $('.zoneSelect select[del="'+selectedDelId+'"] option:first-of-type').attr('selected',true);
		  $('.deliveryOption .deliveryRadio[value="'+selectedDelId+'"]').click();
		
		  WithoutZone = $('input.deliveryRadio:checked').attr('pricewithoutzones');
		  WithZone =  $('input.deliveryZoneRadio:checked').attr('price');
		
		  if(WithZone > 0){
				startprice = WithZone;
		  }else{
				startprice = WithoutZone;
		  }
		  $('.changeprice').text(startprice);
		
		  DeliveryDescription = $('input.deliveryRadio:checked').next('div').html();
		  $('.currentDeliveryDescription').html(DeliveryDescription);
	   
		});
и замените его на
$('.mainSelect').change(function(){
		  selectedDelId = $(this).find('option:selected').attr('delid'); 
		  $('.zoneSelect select').hide();
		  $('.zoneSelect select[del="'+selectedDelId+'"]').show();
		  $('.zoneSelect select option').attr('selected',false);
		 
		  $('.zoneSelect select[del="'+selectedDelId+'"] option:first-of-type').attr('selected',true);
		  $('.zoneSelect select[del="'+selectedDelId+'"]').trigger('change');
		
		  WithoutZone = $('input.deliveryRadio:checked').attr('pricewithoutzones');
		  WithZone =  $('input.deliveryZoneRadio:checked').attr('price');
		
		  if(WithZone > 0){
				startprice = WithZone;
		  }else{
				startprice = WithoutZone;
		  }
		  $('.changeprice').text(startprice);
		
		  DeliveryDescription = $('input.deliveryRadio:checked').next('div').html();
		  $('.currentDeliveryDescription').html(DeliveryDescription);
	   
		});
		$(function(){
		$('.zoneSelect select').change(function(){
			optValue = $(this).find('option:selected').attr('value');
			$('.zones input[value="'+optValue+'"]').click();
			WithZone =  $('.deliveryZoneRadio:checked').attr('price');
			$('.changeprice').text(WithZone);
		  })
		});


#16 Paparam

Paparam

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 118 сообщений

Отправлено 23 Ноябрь 2017 - 16:06

Просмотр сообщенияStasya (23 Ноябрь 2017 - 15:43) писал:

Здравствуйте. В файле main.js найдите код
$('.mainSelect').change(function(){
		 selectedDelId = $(this).find('option:selected').attr('delid');
		 $('.zoneSelect select').hide();
		 $('.zoneSelect select[del="'+selectedDelId+'"]').show();
		 $('.zoneSelect select option').attr('selected',false)
		 $('.zoneSelect select[del="'+selectedDelId+'"] option:first-of-type').attr('selected',true);
		 $('.deliveryOption .deliveryRadio[value="'+selectedDelId+'"]').click();
		
		 WithoutZone = $('input.deliveryRadio:checked').attr('pricewithoutzones');
		 WithZone = $('input.deliveryZoneRadio:checked').attr('price');
		
		 if(WithZone > 0){
			 startprice = WithZone;
		 }else{
			 startprice = WithoutZone;
		 }
		 $('.changeprice').text(startprice);
		
		 DeliveryDescription = $('input.deliveryRadio:checked').next('div').html();
		 $('.currentDeliveryDescription').html(DeliveryDescription);
	
	 });
и замените его на
$('.mainSelect').change(function(){
		 selectedDelId = $(this).find('option:selected').attr('delid');
		 $('.zoneSelect select').hide();
		 $('.zoneSelect select[del="'+selectedDelId+'"]').show();
		 $('.zoneSelect select option').attr('selected',false);
		
		 $('.zoneSelect select[del="'+selectedDelId+'"] option:first-of-type').attr('selected',true);
		 $('.zoneSelect select[del="'+selectedDelId+'"]').trigger('change');
		
		 WithoutZone = $('input.deliveryRadio:checked').attr('pricewithoutzones');
		 WithZone = $('input.deliveryZoneRadio:checked').attr('price');
		
		 if(WithZone > 0){
			 startprice = WithZone;
		 }else{
			 startprice = WithoutZone;
		 }
		 $('.changeprice').text(startprice);
		
		 DeliveryDescription = $('input.deliveryRadio:checked').next('div').html();
		 $('.currentDeliveryDescription').html(DeliveryDescription);
	
	 });
	 $(function(){
	 $('.zoneSelect select').change(function(){
		 optValue = $(this).find('option:selected').attr('value');
		 $('.zones input[value="'+optValue+'"]').click();
		 WithZone = $('.deliveryZoneRadio:checked').attr('price');
		 $('.changeprice').text(WithZone);
		 })
	 });


Здравствуйте! Изменения произвел. теперь цена доставки меняется при выборе разной зоны доставки. НО если вдруг я передумал (тоесть передумал отправлять Boxberry в 1 зону), и начал искать другой способ доставки (например курьер в пределах МКАД), конечная стоимость доставки становится равна цене последней зоны доставки в которой я лазил (тоесть это может быть и не Boxberry, а допустим разные пункты самовывоза). в 1 скрине показал как меняется цена доставки при смене зоны доставки, во втором показал как итоговая цена не изменяется при смене способа доставки.

(

23.11.2017 16:06:55 бекап)

Прикрепленные изображения

  • доставка 1.png
  • Доставка 2.png


#17 Paparam

Paparam

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 118 сообщений

Отправлено 06 Декабрь 2017 - 09:11

ау

#18 Vaccina

Vaccina

    Активный участник

  • Модераторы
  • 24 217 сообщений

Отправлено 07 Декабрь 2017 - 06:43

Здравствуйте.

Попробуйте блок:
  $(function(){
		 $('.zoneSelect select').change(function(){
				 optValue = $(this).find('option:selected').attr('value');
				 $('.zones input[value="'+optValue+'"]').click();
				 WithZone = $('.deliveryZoneRadio:checked').attr('price');
				 $('.changeprice').text(WithZone);
				 })
		 });

поставить перед:
$('.mainSelect').change(function(){
				 selectedDelId = $(this).find('option:selected').attr('delid');
				 $('.zoneSelect select').hide();
				 $('.zoneSelect select[del="'+selectedDelId+'"]').show();
				 $('.zoneSelect select option').attr('selected',false);
			   
				 $('.zoneSelect select[del="'+selectedDelId+'"] option:first-of-type').attr('selected',true);
				 $('.zoneSelect select[del="'+selectedDelId+'"]').trigger('change');
			   
				 WithoutZone = $('input.deliveryRadio:checked').attr('pricewithoutzones');
				 WithZone = $('input.deliveryZoneRadio:checked').attr('price');
			   
				 if(WithZone > 0){
						 startprice = WithZone;
				 }else{
						 startprice = WithoutZone;
				 }
				 $('.changeprice').text(startprice);
			   
				 DeliveryDescription = $('input.deliveryRadio:checked').next('div').html();
				 $('.currentDeliveryDescription').html(DeliveryDescription);
	   
		 });


#19 Paparam

Paparam

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 118 сообщений

Отправлено 07 Декабрь 2017 - 09:47

Просмотр сообщенияVaccina (07 Декабрь 2017 - 06:43) писал:

Здравствуйте.

Попробуйте блок:
$(function(){
		 $('.zoneSelect select').change(function(){
				 optValue = $(this).find('option:selected').attr('value');
				 $('.zones input[value="'+optValue+'"]').click();
				 WithZone = $('.deliveryZoneRadio:checked').attr('price');
				 $('.changeprice').text(WithZone);
				 })
		 });

поставить перед:
$('.mainSelect').change(function(){
				 selectedDelId = $(this).find('option:selected').attr('delid');
				 $('.zoneSelect select').hide();
				 $('.zoneSelect select[del="'+selectedDelId+'"]').show();
				 $('.zoneSelect select option').attr('selected',false);
			
				 $('.zoneSelect select[del="'+selectedDelId+'"] option:first-of-type').attr('selected',true);
				 $('.zoneSelect select[del="'+selectedDelId+'"]').trigger('change');
			
				 WithoutZone = $('input.deliveryRadio:checked').attr('pricewithoutzones');
				 WithZone = $('input.deliveryZoneRadio:checked').attr('price');
			
				 if(WithZone > 0){
						 startprice = WithZone;
				 }else{
						 startprice = WithoutZone;
				 }
				 $('.changeprice').text(startprice);
			
				 DeliveryDescription = $('input.deliveryRadio:checked').next('div').html();
				 $('.currentDeliveryDescription').html(DeliveryDescription);
	
		 });

Попробовал, ничего не изменилось

#20 Paparam

Paparam

    Продвинутый пользователь

  • Пользователи
  • PipPipPip
  • 118 сообщений

Отправлено 10 Декабрь 2017 - 16:33

Проблема хотя бы решаема?)




Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных