Скрыть блок адрес доставки при самовывозе

Добрый день всем.

Возникла проблема, никак не могу скрыть блок «адрес доставки» при выборе способа доставки самовывоз.

Нашел на просторах сего замечательного сайта вот такую конструкцию

$(document).on('change', '[name="delivery"]', function() {
	if ($('[name="delivery"]:checked').attr('id') == 'delivery_5') {
		и развлекайся на здоровье...
	}
})


Но не пойму никак как заставить ее работать.

Пробывал через [[+delivery.id:]] но тоже не получилось…

Недавно начал работать с modx, не пинайте сильно, если вопросы вам покажутся дурными.

Minishop2 последней версии.
Георгий Графов
15 ноября 2016, 13:25
modx.pro
1
3 461
0

Комментарии: 7

Дмитрий Суворов
15 ноября 2016, 19:23
0
Посмотрите, какой ID имеет пункт самовывоза (в админке или в коде сайта), в примере указан вариант доставки с ID 5, у вас пункт «Самовывоз» может быть под другим ID. Тут же JQuery, манипуляция с версткой и структурой html, знать принципы работы с MODX в данном случае не обязательно.
    Георгий Графов
    16 ноября 2016, 01:25
    0
    При таком варианте:

    <script>
        $(document).on('change', '[name="delivery"]', function() {
    	if ($('[name="delivery"]:checked').attr('id') == 'delivery_1') {
    		$("#address_block").hide();
    	}	else  {
    		$("#address_block").show();
    		return false;
    	}
    })
    </script>
    Блок скрывается но не при загрузке страницы. При загрузке самовывоз активен пока по нему не нажмешь, как будто срабатывает при onclick
      Дмитрий Суворов
      16 ноября 2016, 01:33
      2
      +1
      function hideaddress(){
         if ($('[name="delivery"]:checked').attr('id') == 'delivery_1') {
            $("#address_block").hide();
         } else {
            $("#address_block").show();
            return false;
         }
      }
      
      window.onload = function () {
         hideaddress();
      };
      
      $(document).on('change', '[name="delivery"]', function() {
         hideaddress();
      })
Михаил
16 ноября 2016, 08:58
+1
топорно но работает. У меня показывается карта вместо полей)
$('input[name=delivery]').on('change', function(){
        var del = $('input[name=delivery]:checked').val();
        
        
        if(del != 1)
        {
           
        }else{

        }
    })
    Георгий Графов
    18 ноября 2016, 15:23
    0
    И вам спасибо, добрый человек, пока такой задачи не ставили, но кто знает, что заказчику в голову взбредет)
    Антон
    Антон
    18 ноября 2016, 15:55
    0
    Похожий вопрос есть.
    Как убрать доставку для некоторых товаров?
    Например, для крупногабаритного, информация получится с фронтенда.
    Или слишком тяжелого, информация получится с фронтенда.
    Или по переключателю, при создании товара.
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      7