Приветствую. Использую стандартный шаблон и модуль Ajax Quick Checkout. Столкнулся с проблемой: написали из гугла, что нужно скрыть неиспользуемые поля при выборе способа доставки. То есть, получается: если выбран самовывоз, то все скрыто; если выбрана доставка почтой, то видно ФИО + склад почты; если курьер, то скрыт склад. Мозгами я понимаю как это делать и моих знаний в JS достаточно, чтобы проверить checked, присвоить display:none Но все усугубляется тем, что все эти id создаются через AJAX. Может кто-то сталкивался, знает решение? Заранее большое спасибо!
Чтоб ловить события на элементах, которых изначально нет при загрузке страницы, надо вешать обработчик так: Код: $(document).on('change', 'chebox_id', function(){}); Либо можно перейти на Симпл, где связь полей и методов задаётся в настройках. Первый раз о таком слышу.
Спасибо за ответ Да, я сам в шоке. Если бы не столкнулся с этим. Да у меня там уже столько всего привязано, что переход на симплу может быть проблематичен, хотя, как вариант рассмотрю, за что еще раз спасибо. Я пробовал делать так, как Вы написали, но ничего не получается. Если не в тягость, можете написать как это сделать, если у меня id="flat.flat", а скрыть надо id="shipping_address_company_input" Хз, если и Вы не поможете, то буду раскошеливаться на симплу, чего не хотелось бы... Заранее большое спасибо!
Как-то так: Код: $(document).on('change', '#flat.flat', function(){ if($(this).prop('checked')){ $('#shipping_address_company_input').hide(); } else { $('#shipping_address_company_input').show(); } }); Если не сработает, надо экспериментировать вживую.