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


Редактирование Оформления Заказа

самовывоз оформление заказа

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

#21 murat-ufa

murat-ufa

    Пользователь

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

Отправлено 08 Декабрь 2013 - 23:40

Добрый день!

Подскажите как скрыть при выборе способа доставки "Самовывоз" - Индекс, Город, Регион, Адрес.
и при выборе способа доставки "Курьер" - Индекс, Город, Регион. ???

и такой вопрос можно ли при выборе способа доставки "Самовывоз" и "Курьер" сделать так чтобы пропускался 3 шаг "выбор способа оплаты"?
Номер аккаунта: SL-180463
Заранее СПАСИБО!

#22 Stasya

Stasya

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

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

Отправлено 09 Декабрь 2013 - 16:01

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

#23 Mumtaz

Mumtaz

    Новичок

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

Отправлено 04 Апрель 2014 - 12:14

Добрый день, помоги сделать тоже самое, что и топикстартеру. При самовывозе, графы о заполнении адресы не должны высвечиваться. а при остальных вариантах - графы для заполнения адреса должны появляться. Все перепробовала, ничего у меня не получается.

Помогите. пожалуйста:)

SL-263253

#24 Castiel

Castiel

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

  • Модераторы
  • 3 519 сообщений
  • ГородНижний Новгород

Отправлено 05 Апрель 2014 - 12:47

Просмотр сообщенияMumtaz (04 Апрель 2014 - 12:14) писал:

Добрый день, помоги сделать тоже самое, что и топикстартеру. При самовывозе, графы о заполнении адресы не должны высвечиваться. а при остальных вариантах - графы для заполнения адреса должны появляться. Все перепробовала, ничего у меня не получается.

Помогите. пожалуйста :)

SL-263253


Здравствуйте, для решения данного вопроса воспользуйтесь этой инструкцией.

#25 Mumtaz

Mumtaz

    Новичок

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

Отправлено 05 Апрель 2014 - 13:33

Просмотр сообщенияCastiel (05 Апрель 2014 - 12:47) писал:

Здравствуйте, для решения данного вопроса воспользуйтесь этой инструкцией.

Я по ней и делаю, все равно панель с адресом выскакивает.

#26 support 2.0

support 2.0

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

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

Отправлено 05 Апрель 2014 - 19:00

Просмотр сообщенияMumtaz (05 Апрель 2014 - 13:33) писал:

Я по ней и делаю, все равно панель с адресом выскакивает.
В конце файла main.js нужно было добавить
$(function() {
$('.deliveryRadio').click(function() {
var delivery = '226439';
if($(this).val() === delivery) {
	 var desc = $.trim($(this).closest('tbody').find('tr:last td').text());
	 $('#deliveryAddress').val(desc).closest('tr').hide();
	 $('#deliveryZipCode, #deliveryCity, #deliveryRegion, #deliveryConvenientDate').closest('tr').hide();
		 $('.head-delivery').hide();
}
else {
	 $('#deliveryAddress, #deliveryZipCode, #deliveryCity, #deliveryRegion, #deliveryConvenientDate').val('').closest('tr').show();
	 $('.head-delivery').show();
}
});
$('.deliveryRadio[checked="checked"]').trigger('click');
});

где 226439 - id данного пункта, у каждого на сайте он разный.
Все изменения произвела. Теперь у Вас скрываются все пункты меню при выборе самовывоза кроме комментария

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

  • ScreenShot 522.png
  • ScreenShot 523.png


#27 Mumtaz

Mumtaz

    Новичок

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

Отправлено 07 Апрель 2014 - 07:20

Спасибо огромное!!!!!! :wub: :wub: :wub: :wub:

#28 tanch

tanch

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

  • Пользователи
  • PipPipPipPip
  • 300 сообщений
  • ГородНовосибирск

Отправлено 27 Декабрь 2014 - 06:51

Просмотр сообщенияsupport 2.0 (05 Апрель 2014 - 19:00) писал:

В конце файла main.js нужно было добавить
$(function() {
$('.deliveryRadio').click(function() {
var delivery = '226439';
if($(this).val() === delivery) {
	 var desc = $.trim($(this).closest('tbody').find('tr:last td').text());
	 $('#deliveryAddress').val(desc).closest('tr').hide();
	 $('#deliveryZipCode, #deliveryCity, #deliveryRegion, #deliveryConvenientDate').closest('tr').hide();
		 $('.head-delivery').hide();
}
else {
	 $('#deliveryAddress, #deliveryZipCode, #deliveryCity, #deliveryRegion, #deliveryConvenientDate').val('').closest('tr').show();
	 $('.head-delivery').show();
}
});
$('.deliveryRadio[checked="checked"]').trigger('click');
});

где 226439 - id данного пункта, у каждого на сайте он разный.

Шаблон Хамелеон
Внесла изменения, итог:
Подставляется адрес самовывоза в поле "Адрес доставки" прописанный в описании к этому способу доставки
Это хорошо
Но! Хотелось бы чтобы все остальные поля скрывались (Страна, Область, Город, Почтовый индекс)
и это только при выборе самовывоза

#29 Vaccina

Vaccina

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

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

Отправлено 27 Декабрь 2014 - 07:03

Вам необходимо установить свой идентификатор способа доставки, вместо '226439' приведенном в коде. В вашем случае это будет код вида

$(function () {
  $('.deliveryRadio').click(function () {
	var delivery = '124892';
	if ($(this).val() === delivery) {
	  var desc = $.trim($(this).closest('tbody').find('tr:last td').text());
	  $('#deliveryAddress').val(desc).closest('tr').hide();
	  $('#deliveryZipCode, #deliveryCity, #deliveryRegion, #deliveryConvenientDate').closest('tr').hide();
	  $('.head-delivery').hide();
	}
	else {
	  $('#deliveryAddress, #deliveryZipCode, #deliveryCity, #deliveryRegion, #deliveryConvenientDate').val('').closest('tr').show();
	  $('.head-delivery').show();
	}
  });
  $('.deliveryRadio[checked="checked"]').trigger('click');
});

для формы быстрого заказа необходимо использовать тот же код, только с другими идентификаторами скрываемых полей

$(function () {
  $('.deliveryRadio').click(function () {
	var delivery = '124892';
	if ($(this).val() === delivery) {
	  var desc = $.trim($(this).closest('tbody').find('tr:last td').text());
	  $('#quickDeliveryAddress').val(desc).closest('tr').hide();
	  $('#quickDeliveryZipCode, #quickDeliveryCity, #quickDeliveryRegion, #quickDeliveryConvenientDate').closest('tr').hide();
	  $('.head-delivery').hide();
	}
	else {
	  $('#quickDeliveryAddress, #quickDeliveryZipCode, #quickDeliveryCity, #deliveryRegion, #quickDeliveryConvenientDate').val('').closest('tr').show();
	  $('.head-delivery').show();
	}
  });
  $('.deliveryRadio[checked="checked"]').trigger('click');
});


#30 tanch

tanch

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

  • Пользователи
  • PipPipPipPip
  • 300 сообщений
  • ГородНовосибирск

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

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

Вам необходимо установить свой идентификатор способа доставки, вместо '226439' приведенном в коде. В вашем случае это будет код вида

Я именно так и сделала
подставила свой 124892

Кстати, в Быстрый заказ - просто в конец добавлять?
в этом случае весь код вылазит в самой форме Быстрого заказа

#31 Vaccina

Vaccina

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

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

Отправлено 27 Декабрь 2014 - 07:31

Можно и в конец, но код должен находиться внутри тега <script></script>. Лучше всего разместить его перед уже существующим закрывающим тегом </script>

#32 tanch

tanch

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

  • Пользователи
  • PipPipPipPip
  • 300 сообщений
  • ГородНовосибирск

Отправлено 27 Декабрь 2014 - 07:34

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

Можно и в конец, но код должен находиться внутри тега <script></script>. Лучше всего разместить его перед уже существующим закрывающим тегом </script>
так у меня же не получилось
всё тот же вопрос как и в посте #28


#33 Vaccina

Vaccina

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

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

Отправлено 27 Декабрь 2014 - 07:39

У вас по всей видимости немного отличается разметка. Попробуйте заменить строку (встречается 3 раза)

.closest('tr')

на

.closest('.field')


#34 tanch

tanch

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

  • Пользователи
  • PipPipPipPip
  • 300 сообщений
  • ГородНовосибирск

Отправлено 27 Декабрь 2014 - 07:55

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

Спасибо - помогло!
только зачем-то осталось поле "Страна"

#35 Vaccina

Vaccina

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

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

Отправлено 27 Декабрь 2014 - 08:02

Поле "Страна" вы можете скрыть в настройках, если доставляете товар только в пределах одной страны. Если нет, то для аналогичное срытия достаточно к строкам

$('#deliveryZipCode, #deliveryCity, #deliveryRegion, #deliveryConvenientDate')
$('#deliveryAddress, #deliveryZipCode, #deliveryCity, #deliveryRegion, #deliveryConvenientDate')

добавить дополнительный идентификатор (через запятую) #deliveryCountry

#36 tooann

tooann

    Пользователь

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

Отправлено 01 Сентябрь 2015 - 15:12

Добрый день. Мне нужно скрыть для двух вариантов доставки все поля, кроме комментария. Использовала приведенный вами код, подставив свои данные. Все скрывается. Но оказалось, что при выборе доставки до удобной станции метро, когда переходим на 4 шаг, в поле адрес доставки автоматически прописывается описание из последнего варианта доставки доступного на сайте ( сейчас из доставки транспортной компанией). Мне не нужно что бы вообще что-либо туда подставлялось, т.е что бы было как в варианте с самовывозом, на 4 шаге поле адрес доставки не высвечивался. Подскажите, пожалуйста, что нужно исправить? Заранее спасибо.

//Меняем поля на шаге 2 в оформлении заказа

$(function() {

$('.deliveryRadio').click(function() {

var current_id = $(this).val();

$('#deliveryZipCode').closest('tr').show();

$('#deliveryCity').closest('tr').show();

$('#deliveryAddress').closest('tr').show();

$('#deliveryConvenientDate').closest('tr').show();

$('#deliveryCountry').closest('tr').show();

// Для самовывоза скрываем адрес доставки и оставляем комментарий

if(current_id === '115789') {

$('#deliveryZipCode').closest('tr').hide();

$('#deliveryCity').closest('tr').hide();

$('#deliveryAddress').closest('tr').hide();

$('#deliveryConvenientDate').closest('tr').hide();

$('#deliveryCountry').closest('tr').hide();

$('#deliveryRegion').closest('tr').hide();

}

// Для доставки до удобной станции метро скрываем адрес доставки и оставляем комментарий

else if(current_id === '119311') {

$('#deliveryZipCode').closest('tr').hide();

$('#deliveryCity').closest('tr').hide();

$('#deliveryAddress').closest('tr').hide();

$('#deliveryConvenientDate').closest('tr').hide();

$('#deliveryCountry').closest('tr').hide();

$('#deliveryRegion').closest('tr').hide();

}

});

$('.deliveryRadio:checked').trigger('click');

});


#37 tooann

tooann

    Пользователь

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

Отправлено 02 Сентябрь 2015 - 11:50

спасибо, уже разобралась

#38 007

007

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

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

Отправлено 15 Апрель 2016 - 12:28

Добрый день!
Внес в конце шаблон Быстрого заказа следующий код:
<script>
$(function() {
$('.deliveryRadio').click(function() {
var current_id = $(this).val();
$('#quickDeliveryCity').closest('field').show();
$('#quickDeliveryZipCode').closest('field').show();
$('#quickDeliveryConvenientDate').closest('field').show();
$('#quickDeliveryAddress').closest('field').show();
// Для самовывоза скрываем адрес доставки и оставляем комментарий
if(current_id === '322029') {
  $('#quickDeliveryCity').closest('field').hide();
  $('#quickDeliveryZipCode').closest('field').hide();
  $('#quickDeliveryConvenientDate').closest('field').hide();
  $('#quickDeliveryAddress').closest('field').hide();
}
// Для курьера скрываем город и индекс
else if(current_id === '318811') {
  $('#quickDeliveryCity').closest('field').hide();
  $('#quickDeliveryZipCode').closest('field').hide();
}
// Для ПЭК скрываем время доставки
else if(current_id === '322920') {
  $('#quickDeliveryConvenientDate').closest('field').hide();
}
// Для почты России скрываем время доставки
else if(current_id === '322921') {
  $('#quickDeliveryConvenientDate').closest('field').hide();
}
});
$('.deliveryRadio:checked').trigger('click');
});
</script>

Но все равно ни одно поле не скрывается. Что не так, подскажите пожалуйста?

#39 Ирина345

Ирина345

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

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

Отправлено 15 Апрель 2016 - 13:30

Просмотр сообщения007 (15 Апрель 2016 - 12:28) писал:

Добрый день!
Внес в конце шаблон Быстрого заказа следующий код:
<script>
$(function() {
$('.deliveryRadio').click(function() {
var current_id = $(this).val();
$('#quickDeliveryCity').closest('field').show();
$('#quickDeliveryZipCode').closest('field').show();
$('#quickDeliveryConvenientDate').closest('field').show();
$('#quickDeliveryAddress').closest('field').show();
// Для самовывоза скрываем адрес доставки и оставляем комментарий
if(current_id === '322029') {
  $('#quickDeliveryCity').closest('field').hide();
  $('#quickDeliveryZipCode').closest('field').hide();
  $('#quickDeliveryConvenientDate').closest('field').hide();
  $('#quickDeliveryAddress').closest('field').hide();
}
// Для курьера скрываем город и индекс
else if(current_id === '318811') {
  $('#quickDeliveryCity').closest('field').hide();
  $('#quickDeliveryZipCode').closest('field').hide();
}
// Для ПЭК скрываем время доставки
else if(current_id === '322920') {
  $('#quickDeliveryConvenientDate').closest('field').hide();
}
// Для почты России скрываем время доставки
else if(current_id === '322921') {
  $('#quickDeliveryConvenientDate').closest('field').hide();
}
});
$('.deliveryRadio:checked').trigger('click');
});
</script>

Но все равно ни одно поле не скрывается. Что не так, подскажите пожалуйста?
Здравствуйте, удалите данный код ( из сообщения выше) из шаблона Быстрый заказ, далее найдите в этом шаблоне
	  // Форма регистрации нового пользователя, действие ссылки "показать пароль"
		$('.OrderShowPass').on('click', function () {
			ChangePasswordFieldType(this, $('#contactPassWord'));// функции передаем объект поля ввода пароля
			return false;
		});
после вставьте
$(function() {
$('.deliveryRadio').click(function() {
var current_id = $(this).val();
$('#quickDeliveryCity').closest('.field').show();
$('#quickDeliveryZipCode').closest('.field').show();
$('#quickDeliveryConvenientDate').closest('.field').show();
$('#quickDeliveryAddress').closest('.field').show();
// Для самовывоза скрываем адрес доставки и оставляем комментарий
if(current_id === '322029') {
  $('#quickDeliveryCity').closest('.field').hide();
  $('#quickDeliveryZipCode').closest('.field').hide();
  $('#quickDeliveryConvenientDate').closest('.field').hide();
  $('#quickDeliveryAddress').closest('.field').hide();
}
// Для курьера скрываем город и индекс
else if(current_id === '318811') {
  $('#quickDeliveryCity').closest('.field').hide();
  $('#quickDeliveryZipCode').closest('.field').hide();
}
// Для ПЭК скрываем время доставки
else if(current_id === '322920') {
  $('#quickDeliveryConvenientDate').closest('.field').hide();
}
// Для почты России скрываем время доставки
else if(current_id === '322921') {
  $('#quickDeliveryConvenientDate').closest('.field').hide();
}
});
$('.deliveryRadio:checked').trigger('click');
});


#40 007

007

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

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

Отправлено 15 Апрель 2016 - 14:15

Просмотр сообщенияИрина345 (15 Апрель 2016 - 13:30) писал:

Здравствуйте, удалите данный код ( из сообщения выше) из шаблона Быстрый заказ, далее найдите в этом шаблоне
	 // Форма регистрации нового пользователя, действие ссылки "показать пароль"
	 $('.OrderShowPass').on('click', function () {
		 ChangePasswordFieldType(this, $('#contactPassWord'));// функции передаем объект поля ввода пароля
		 return false;
	 });
после вставьте
$(function() {
$('.deliveryRadio').click(function() {
var current_id = $(this).val();
$('#quickDeliveryCity').closest('.field').show();
$('#quickDeliveryZipCode').closest('.field').show();
$('#quickDeliveryConvenientDate').closest('.field').show();
$('#quickDeliveryAddress').closest('.field').show();
// Для самовывоза скрываем адрес доставки и оставляем комментарий
if(current_id === '322029') {
$('#quickDeliveryCity').closest('.field').hide();
$('#quickDeliveryZipCode').closest('.field').hide();
$('#quickDeliveryConvenientDate').closest('.field').hide();
$('#quickDeliveryAddress').closest('.field').hide();
}
// Для курьера скрываем город и индекс
else if(current_id === '318811') {
$('#quickDeliveryCity').closest('.field').hide();
$('#quickDeliveryZipCode').closest('.field').hide();
}
// Для ПЭК скрываем время доставки
else if(current_id === '322920') {
$('#quickDeliveryConvenientDate').closest('.field').hide();
}
// Для почты России скрываем время доставки
else if(current_id === '322921') {
$('#quickDeliveryConvenientDate').closest('.field').hide();
}
});
$('.deliveryRadio:checked').trigger('click');
});

Спасибо! сделал, но остались недочеты:
1. При самовывозе осталось поле время удобное время доставки, адрес доставки, а их тоже бы хотелось убрать. И можно ли убрать строку  "Адрес доставки заказа" в случае выбора Самовывоза
2. При доставке ПЭК и Почтой России также осталось поле удобное время доставки, а его нужно убрать.

Я что-то не так указал в коде?





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

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

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