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


Скрыть Адрес При Самовывозе

самовывоз адрес скрыть техно

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

#1 like.hornet.6

like.hornet.6

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

  • Пользователи
  • PipPipPip
  • 168 сообщений
  • ГородРостов-на-Дону

Отправлено 21 Август 2019 - 14:50

Нужно скрыть поля запроса адреса при выборе клиентом способа доставки "самовывоз".

Плюс ко всему нужно переместить блок "Способ доставки", чтобы он был выше блока "Адрес доставки", для того чтобы при исчезновении полей запроса адреса страницу не перекосоэтовало.

Первый скрин - как есть, второй - как нужно

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

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

  • 1.jpg
  • 2.jpg


#2 Vaccina

Vaccina

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

  • Модераторы
  • 23 788 сообщений

Отправлено 17 Сентябрь 2019 - 06:07

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

Зайдите в раздел Сайт - Редактор шаблонов - Быстрый заказ - найдите:
		<!-- Способ доставки-->
		<div class="delivery">
		  <h3 class="title" title="Выберите удобный для вас способ доставки"><span>Cпособ доставки</span></h3>
		  <div class="manufacturer-list">
			<select class="mainSelect input">
			  {% 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 %}	 
				<select del="{order_delivery.ID}">
				  {% 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 %}
				</select>
				{% 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>
  
  
перенесите его, поставив перед:
		<!-- Адрес доставки-->
		{% IF SETTINGS_ORDER_FIELDS_COUNTRY < 3 || SETTINGS_ORDER_FIELDS_REGION < 3 || SETTINGS_ORDER_FIELDS_CITY < 3 || SETTINGS_ORDER_FIELDS_ADDRESS < 3 || SETTINGS_ORDER_FIELDS_ZIP_CODE < 3 || SETTINGS_ORDER_FIELDS_CONVENIENT_TIME < 3 || SETTINGS_ORDER_FIELDS_COMMENT < 3 %}
		<div class="adress">
		  <h3 class="title" title="Выберите удобный для вас Адрес доставки заказа"><span>Адрес доставки заказа</span></h3>
  
  
далее зайдите в main.js - найдите:
// Скрипты для Быстрого заказа
function quickOrderScripts(){
замените на:
// Скрипты для Быстрого заказа
function quickOrderScripts(){
 
$(function() {
$('.deliveryRadio').click(function() {
var courier_id = '275732';
var current_id = $(this).val();
$('.adress').show();
if(current_id === courier_id) {
   $('.adress').hide();
}
});
$('.deliveryRadio:checked').trigger('click');
}); 


#3 like.hornet.6

like.hornet.6

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

  • Пользователи
  • PipPipPip
  • 168 сообщений
  • ГородРостов-на-Дону

Отправлено 21 Сентябрь 2019 - 13:55

Просмотр сообщенияVaccina (17 Сентябрь 2019 - 06:07) писал:

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

Зайдите в раздел Сайт - Редактор шаблонов - Быстрый заказ - найдите:
	 <!-- Способ доставки-->
	 <div class="delivery">
		 <h3 class="title" title="Выберите удобный для вас способ доставки"><span>Cпособ доставки</span></h3>
		 <div class="manufacturer-list">
		 <select class="mainSelect input">
			 {% 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 %}	
			 <select del="{order_delivery.ID}">
				 {% 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 %}
			 </select>
			 {% 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>
  
  
перенесите его, поставив перед:
	 <!-- Адрес доставки-->
	 {% IF SETTINGS_ORDER_FIELDS_COUNTRY < 3 || SETTINGS_ORDER_FIELDS_REGION < 3 || SETTINGS_ORDER_FIELDS_CITY < 3 || SETTINGS_ORDER_FIELDS_ADDRESS < 3 || SETTINGS_ORDER_FIELDS_ZIP_CODE < 3 || SETTINGS_ORDER_FIELDS_CONVENIENT_TIME < 3 || SETTINGS_ORDER_FIELDS_COMMENT < 3 %}
	 <div class="adress">
		 <h3 class="title" title="Выберите удобный для вас Адрес доставки заказа"><span>Адрес доставки заказа</span></h3>
  
  
далее зайдите в main.js - найдите:
// Скрипты для Быстрого заказа
function quickOrderScripts(){
замените на:
// Скрипты для Быстрого заказа
function quickOrderScripts(){

$(function() {
$('.deliveryRadio').click(function() {
var courier_id = '275732';
var current_id = $(this).val();
$('.adress').show();
if(current_id === courier_id) {
$('.adress').hide();
}
});
$('.deliveryRadio:checked').trigger('click');
}); 

На странице возникла JS ошибка:
Uncaught ReferenceError: preloadHide is not defined на строке: 63.

#4 Vaccina

Vaccina

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

  • Модераторы
  • 23 788 сообщений

Отправлено 09 Октябрь 2019 - 06:33

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

Простите за ожидание, перепроверила инструкцию, ошибки такой не возникает, есть вероятность, что вы нечаянно стерли строку:
$(function(){

после:
// Скрипты для Быстрого заказа
function quickOrderScripts(){

при замене кода, в этом случае я обнаружила всплывающую ошибку. Выполните инструкцию и в случае обнаружения ошибки сообщите.

#5 like.hornet.6

like.hornet.6

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

  • Пользователи
  • PipPipPip
  • 168 сообщений
  • ГородРостов-на-Дону

Отправлено 15 Октябрь 2019 - 11:12

Просмотр сообщенияVaccina (09 Октябрь 2019 - 06:33) писал:

Здравствуйте.Простите за ожидание, перепроверила инструкцию, ошибки такой не возникает, есть вероятность, что вы нечаянно стерли строку:
$(function(){
после:
// Скрипты для Быстрого заказаfunction quickOrderScripts(){
при замене кода, в этом случае я обнаружила всплывающую ошибку. Выполните инструкцию и в случае обнаружения ошибки сообщите.
Всё верно, по ошибке удалил строку. Теперь работает, удобней будет.
Кстати, ещё по поводу оформления заказа - можно ли при выборе способа доставки "Курьером - Ростов-на-Дону" скрывать строку город?

#6 Vaccina

Vaccina

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

  • Модераторы
  • 23 788 сообщений

Отправлено 19 Октябрь 2019 - 04:50

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

Зайдите в раздел Сайт - Редактор шаблонов - main.js - найдите:
$(function() {
$('.deliveryRadio').click(function() {
var courier_id = '275732';
var current_id = $(this).val();
$('.adress').show();
if(current_id === courier_id) {
$('.adress').hide();
}
});
$('.deliveryRadio:checked').trigger('click');
});

замените на:
$(function() {
$('.deliveryRadio').click(function() {
var courier_id = '275732';
var courier_id2 = '290807';
var current_id = $(this).val();
$('.adress').show();
$('.adress .city').show();
if(current_id === courier_id) {
$('.adress').hide();
} else if (current_id === courier_id2){
$('.adress .city').hide();
}
});
$('.deliveryRadio:checked').trigger('click');
});

далее зайдите в шаблон Быстрый заказ - найдите:
			<!-- Если поле города запрашивается -->
			{% IF SETTINGS_ORDER_FIELDS_CITY < 3 %}
			  <div class="fields">
				<label for="quickDeliveryCity" {% IF SETTINGS_ORDER_FIELDS_CITY=1 %}class="required"{% ENDIF %}>Город{% IF SETTINGS_ORDER_FIELDS_CITY=1 %}<em>*</em>{% ENDIF %}</label>
				<div class="input-box">
				  <input type="text" id="quickDeliveryCity" name="form[delivery][city]" value="{ORDER_FORM_DELIVERY_CITY}" class="input {% IF SETTINGS_ORDER_FIELDS_CITY=1 %}required{% ENDIF %}" maxlength="255" />
				</div>
			  </div>
			{% ENDIF %}
    
    
замените на:
			<!-- Если поле города запрашивается -->
			{% IF SETTINGS_ORDER_FIELDS_CITY < 3 %}
			  <div class="fields city">
				<label for="quickDeliveryCity" {% IF SETTINGS_ORDER_FIELDS_CITY=1 %}class="required"{% ENDIF %}>Город{% IF SETTINGS_ORDER_FIELDS_CITY=1 %}<em>*</em>{% ENDIF %}</label>
				<div class="input-box">
				  <input type="text" id="quickDeliveryCity" name="form[delivery][city]" value="{ORDER_FORM_DELIVERY_CITY}" class="input {% IF SETTINGS_ORDER_FIELDS_CITY=1 %}required{% ENDIF %}" maxlength="255" />
				</div>
			  </div>
			{% ENDIF %}


#7 like.hornet.6

like.hornet.6

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

  • Пользователи
  • PipPipPip
  • 168 сообщений
  • ГородРостов-на-Дону

Отправлено 19 Октябрь 2019 - 08:20

Просмотр сообщенияVaccina (19 Октябрь 2019 - 04:50) писал:

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

Зайдите в раздел Сайт - Редактор шаблонов - main.js - найдите:
$(function() {
$('.deliveryRadio').click(function() {
var courier_id = '275732';
var current_id = $(this).val();
$('.adress').show();
if(current_id === courier_id) {
$('.adress').hide();
}
});
$('.deliveryRadio:checked').trigger('click');
});

замените на:
$(function() {
$('.deliveryRadio').click(function() {
var courier_id = '275732';
var courier_id2 = '290807';
var current_id = $(this).val();
$('.adress').show();
$('.adress .city').show();
if(current_id === courier_id) {
$('.adress').hide();
} else if (current_id === courier_id2){
$('.adress .city').hide();
}
});
$('.deliveryRadio:checked').trigger('click');
});

далее зайдите в шаблон Быстрый заказ - найдите:
		 <!-- Если поле города запрашивается -->
		 {% IF SETTINGS_ORDER_FIELDS_CITY < 3 %}
			 <div class="fields">
			 <label for="quickDeliveryCity" {% IF SETTINGS_ORDER_FIELDS_CITY=1 %}class="required"{% ENDIF %}>Город{% IF SETTINGS_ORDER_FIELDS_CITY=1 %}<em>*</em>{% ENDIF %}</label>
			 <div class="input-box">
				 <input type="text" id="quickDeliveryCity" name="form[delivery][city]" value="{ORDER_FORM_DELIVERY_CITY}" class="input {% IF SETTINGS_ORDER_FIELDS_CITY=1 %}required{% ENDIF %}" maxlength="255" />
			 </div>
			 </div>
		 {% ENDIF %}


замените на:
		 <!-- Если поле города запрашивается -->
		 {% IF SETTINGS_ORDER_FIELDS_CITY < 3 %}
			 <div class="fields city">
			 <label for="quickDeliveryCity" {% IF SETTINGS_ORDER_FIELDS_CITY=1 %}class="required"{% ENDIF %}>Город{% IF SETTINGS_ORDER_FIELDS_CITY=1 %}<em>*</em>{% ENDIF %}</label>
			 <div class="input-box">
				 <input type="text" id="quickDeliveryCity" name="form[delivery][city]" value="{ORDER_FORM_DELIVERY_CITY}" class="input {% IF SETTINGS_ORDER_FIELDS_CITY=1 %}required{% ENDIF %}" maxlength="255" />
			 </div>
			 </div>
		 {% ENDIF %}
Спасибо большое.
Заодно Я понял как скрыть поле почтового индекса.
Нужно <div class="fields"> заменить на <div class="fields city">





Темы с аналогичным тегами самовывоз, адрес, скрыть, техно

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

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