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


Как Убрать Адрес Из Самовывоза


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

#1 Samcopy

Samcopy

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

  • Пользователи
  • PipPipPipPip
  • 346 сообщений
  • ГородСамара

Отправлено 21 Ноябрь 2013 - 13:14

Здравствуйте.
На сайте videoline63.ru при оформлении заказа через корзину есть варианты выбора доставки товара (самовывоз, доставка и т.д.), но обязательное поле, где покупатель вводит Адрес куда доставить, при выборе варианта Самовывоз также остается активным (обязательным). Как исправить этот момент? При самовывозе покупатель приезжает на склад магазина сам.

#2 Koderhan

Koderhan

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

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

Отправлено 21 Ноябрь 2013 - 17:54

Панель администратора, "Сайт"->"Редактор Шаблонов".
В конец файла "main.js".
Добавить код:
$(function(){
$('.orderInfoDeliveryAddress').hide();
$('.orderInfoDeliveryAddress input').removeClass('required');
$('.orderInfoDeliveryAddress textarea').removeClass('required');
$('.orderInfoDeliveryAddress label span').hide();
$('.orderStageDelivery h3:last').hide();

$('.deliveryRadio:first').click(function() {
$('.orderInfoDeliveryAddress').hide();
$('.orderInfoDeliveryAddress input').removeClass('required');
$('.orderInfoDeliveryAddress textarea').removeClass('required');
$('.orderInfoDeliveryAddress label span').hide();
$('.orderStageDelivery h3:last').hide();
});

$('.deliveryRadio:not(.deliveryRadio:first)').click(function() {
$('.orderInfoDeliveryAddress').show();
$('.orderInfoDeliveryAddress input').addClass('required');
$('.orderInfoDeliveryAddress textarea').addClass('required');
$('.orderInfoDeliveryAddress label span').show();
$('.orderStageDelivery h3:last').show();
})


});

И в основных настройках сделать поля ввода адрес не обязательными.

#3 Samcopy

Samcopy

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

  • Пользователи
  • PipPipPipPip
  • 346 сообщений
  • ГородСамара

Отправлено 21 Ноябрь 2013 - 19:00

Так не пойдет, если убрать в основных настройках обязательность Адреса, то при выборе доставки через ТК или курьером также Адрес получается не обязательным (а в этих случаях доставки он обязателен)

#4 Koderhan

Koderhan

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

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

Отправлено 21 Ноябрь 2013 - 19:41

Просмотр сообщенияSamcopy (21 Ноябрь 2013 - 19:00) писал:

Так не пойдет, если убрать в основных настройках обязательность Адреса, то при выборе доставки через ТК или курьером также Адрес получается не обязательным (а в этих случаях доставки он обязателен)
В таком случае придется вставлять какие то данные при выбора способа "Самовызов".


Панель администратора, "Сайт"->"Редактор шаблонов".
В файле "main.js".
Найти код:
$(function(){
$('.orderInfoDeliveryAddress').hide();
$('.orderInfoDeliveryAddress input').removeClass('required');
$('.orderInfoDeliveryAddress textarea').removeClass('required');
$('.orderInfoDeliveryAddress label span').hide();
$('.orderStageDelivery h3:last').hide();

$('.deliveryRadio:first').click(function() {
$('.orderInfoDeliveryAddress').hide();
$('.orderInfoDeliveryAddress input').removeClass('required');
$('.orderInfoDeliveryAddress textarea').removeClass('required');
$('.orderInfoDeliveryAddress label span').hide();
$('.orderStageDelivery h3:last').hide();
});

$('.deliveryRadio:not(.deliveryRadio:first)').click(function() {
$('.orderInfoDeliveryAddress').show();
$('.orderInfoDeliveryAddress input').addClass('required');
$('.orderInfoDeliveryAddress textarea').addClass('required');
$('.orderInfoDeliveryAddress label span').show();
$('.orderStageDelivery h3:last').show();
})


});
Заменить:
$(function(){
$('.orderInfoDeliveryAddress').hide();
$('.orderInfoDeliveryAddress input').removeClass('required');
$('.orderInfoDeliveryAddress textarea').removeClass('required');
$('.orderInfoDeliveryAddress label span').hide();
$('.orderStageDelivery h3:last').hide();
$('#deliveryCity').val('test gorod');
$('#deliveryAddress').val('test');

$('.deliveryRadio:first').click(function() {
$('.orderInfoDeliveryAddress').hide();
$('.orderInfoDeliveryAddress input').removeClass('required');
$('.orderInfoDeliveryAddress textarea').removeClass('required');
$('.orderInfoDeliveryAddress label span').hide();
$('.orderStageDelivery h3:last').hide();

$('#deliveryCity').val('test gorod');
$('#deliveryAddress').val('test');
});

$('.deliveryRadio:not(.deliveryRadio:first)').click(function() {
$('.orderInfoDeliveryAddress').show();
$('.orderInfoDeliveryAddress input').addClass('required');
$('.orderInfoDeliveryAddress textarea').addClass('required');
$('#deliveryCity').val(' ');
$('#deliveryAddress').val(' ');
$('.orderInfoDeliveryAddress label span').show();
$('.orderStageDelivery h3:last').show();

})


});
Не забудьте очистить кеш браузера.

#5 xotena

xotena

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

  • Пользователи
  • PipPip
  • 36 сообщений
  • ГородМосква

Отправлено 24 Март 2014 - 09:48

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

#6 Alexey11

Alexey11

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

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

Отправлено 24 Март 2014 - 12:19

Просмотр сообщенияxotena (24 Март 2014 - 09:48) писал:

Здравствуйте!
Воспользовалась данным способом для отмены введения адреса доставки при самовывозе, но у меня он работает только при оформлении заказа через корзину. Как сделать, чтобы это работало и при Быстром заказе?
Попробуйте воспользоваться инструкцией из данной темы сообщение номер 7.

#7 Kolonello

Kolonello

    Новичок

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

Отправлено 04 Сентябрь 2016 - 21:59

Я дико извиняюсь, но вы бы не могли в сотый раз объяснить, так как я уже весь форум перерыл, по заменял в коде ваши вариации исправлений...но не чего нормального не получается.
что нужно поменять в данном коде...что-бы при выборе самовывоз автоматически пропадал Адрес Доставки заказа, а при выборе Курьерства он появлялся.

  // Действия при выборе варианта доставки на этапе оформления заказа
  $(function(){
   sd = $($('.deliveryRadio')[0]);
   id = sd.val()
   ,fz = $($('.deliveryZoneRadio[deliveryid='+id+']')[0]);
   sd.prop('checked',true);
   fz.prop('checked',true);
   if($('.zones').length){  
     price = fz.next().find('.num').text();
     oldPrice = $('tbody[rel='+ id +']').find('.pricefield').find('.num');
     oldPrice.text(price);
   }
  });
  $(function(){
    $('.deliveryRadio').each(function(){
     var
      id = $(this).val()
      ,fz = $($('.deliveryZoneRadio[deliveryid='+id+']')[0]);  
      if($('.zones').length){  
        price = fz.next().find('.num').text();
        oldPrice = $('tbody[rel='+ id +']').find('.pricefield').find('.num');
        if(price != ''){
         oldPrice.text(price);
        }
      }
    })
  });
  $(function(){  
    $('.orderStageDeliveryListTable').on('change','.deliveryRadio',function(){
      $('.deliveryRadio,.deliveryZoneRadio').each(function(){
        $(this).removeAttr('checked');
      })
      var id = $(this).val()
         ,fz = $($('.deliveryZoneRadio[deliveryid='+id+']')[0]);          
      $(this).prop('checked',true);
      fz.prop('checked',true);  
      if($('.zones').length){  
        price = fz.next().find('.num').text();
        oldPrice = $('tbody[rel='+ id +']').find('.pricefield').find('.num');
        if(price != ''){
          oldPrice.text(price);
        }
      }
    })
  });
  // Действия при выборе зоны внутри варианта доставки на этапе оформления заказа
  $('.deliveryZoneRadio').click(function(){
    var id = $(this).attr('deliveryid'),
    price = $(this).next().find('.num').text()
    ,oldPrice = $('tbody[rel='+ id +']').find('.pricefield').find('.num');
    if(price != ''){
      oldPrice.text(price);
    }
    $('.deliveryRadio').each(function(){
      $(this).removeAttr('checked');  
      if($(this).val() == id){
       $(this).prop('checked',true);
      }else{
        $(this).removeAttr('checked');
      }
    })
  });
Заранее спасибо!

#8 Danil

Danil

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

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

Отправлено 05 Сентябрь 2016 - 15:40

Просмотр сообщенияKolonello (04 Сентябрь 2016 - 21:59) писал:

Я дико извиняюсь, но вы бы не могли в сотый раз объяснить, так как я уже весь форум перерыл, по заменял в коде ваши вариации исправлений...но не чего нормального не получается.
что нужно поменять в данном коде...что-бы при выборе самовывоз автоматически пропадал Адрес Доставки заказа, а при выборе Курьерства он появлялся.

  // Действия при выборе варианта доставки на этапе оформления заказа
  $(function(){
   sd = $($('.deliveryRadio')[0]);
   id = sd.val()
   ,fz = $($('.deliveryZoneRadio[deliveryid='+id+']')[0]);
   sd.prop('checked',true);
   fz.prop('checked',true);
   if($('.zones').length){  
price = fz.next().find('.num').text();
oldPrice = $('tbody[rel='+ id +']').find('.pricefield').find('.num');
oldPrice.text(price);
   }
  });
  $(function(){
$('.deliveryRadio').each(function(){
var
  id = $(this).val()
  ,fz = $($('.deliveryZoneRadio[deliveryid='+id+']')[0]);  
  if($('.zones').length){  
price = fz.next().find('.num').text();
oldPrice = $('tbody[rel='+ id +']').find('.pricefield').find('.num');
if(price != ''){
oldPrice.text(price);
}
  }
})
  });
  $(function(){  
$('.orderStageDeliveryListTable').on('change','.deliveryRadio',function(){
  $('.deliveryRadio,.deliveryZoneRadio').each(function(){
$(this).removeAttr('checked');
  })
  var id = $(this).val()
,fz = $($('.deliveryZoneRadio[deliveryid='+id+']')[0]);   
  $(this).prop('checked',true);
  fz.prop('checked',true);  
  if($('.zones').length){  
price = fz.next().find('.num').text();
oldPrice = $('tbody[rel='+ id +']').find('.pricefield').find('.num');
if(price != ''){
  oldPrice.text(price);
}
  }
})
  });
  // Действия при выборе зоны внутри варианта доставки на этапе оформления заказа
  $('.deliveryZoneRadio').click(function(){
var id = $(this).attr('deliveryid'),
price = $(this).next().find('.num').text()
,oldPrice = $('tbody[rel='+ id +']').find('.pricefield').find('.num');
if(price != ''){
  oldPrice.text(price);
}
$('.deliveryRadio').each(function(){
  $(this).removeAttr('checked');  
  if($(this).val() == id){
   $(this).prop('checked',true);
  }else{
$(this).removeAttr('checked');
  }
})
  });
Заранее спасибо!
Здравствуйте.
Изменения Вам произвел, проверьте.

#9 Kolonello

Kolonello

    Новичок

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

Отправлено 06 Сентябрь 2016 - 21:23

Просмотр сообщенияDanil (05 Сентябрь 2016 - 15:40) писал:

Здравствуйте.
Изменения Вам произвел, проверьте.
Спасибо огромное!!!)




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

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