Bask Опубликовано 28 июня, 2017 Жалоба Поделиться Опубликовано 28 июня, 2017 Цель: сделать формы для заполнения данных получателя по заказу: При выборе Укрпочта - открывались дополнительные формы для Укрпочты (все остальные закрывались). При выборе Новая Почта - открывались доп. инпуты для Новой Почты (все остальные закрывались). Проблема: Что-то пошло не так.... открывает доп. поля для Укрпочты, а для Новой Почты не открывает. Код: {foreach $deliveries as $delivery} <li> <div class="checkbox"> <input type="radio" class="radio" name="delivery_id" value="{$delivery->id}" {if $delivery_id==$delivery->id}checked{elseif $delivery@first}checked{/if} id="deliveries_{$delivery->id}" {if $delivery->id==2}onChange="show()" {else} onChange="hide()" {/if} {if $delivery->id==4}onChange="show1()" {else} onChange="hide1()" {/if} > <label for="deliveries_{$delivery->id}">{$delivery->name}</label> </div> {if $delivery->id==2} <div class="ukrposhta" style="display:none;" id="info" > <input placeholder="Город" name="city" type="text" value="{$city|escape}" data-notice="Укажите Ваш город" required /> <input placeholder="Индекс" name="address" type="text" value="{$address|escape}" required data-notice="Укажите индекс"/> </div> {/if} {if $delivery->id==4} <div class="ukrposhta" style="display:none;" id="info2"> <input placeholder="Город" name="city" type="text" value="{$city|escape}" data-notice="Укажите Ваш город" required /> <input placeholder="№ отделения" name="address" type="text" value="{$address|escape}" required data-notice="Укажите номер отделения"/> </div> {/if} </li> {/foreach} <script> function show() { document.getElementById('info').style.display='block'; } function show1() { document.getElementById('info2').style.display='block'; } function hide() { document.getElementById('info').style.display='none'; } function hide1() { document.getElementById('info2').style.display='none'; } </script> Цитата Ссылка на сообщение Поделиться на другие сайты
ЯкЦинДрак Опубликовано 29 июня, 2017 Жалоба Поделиться Опубликовано 29 июня, 2017 Сделано совсем неправильно. Например, для случая $delivery->id==2 в коде будет <input type="radio" ... onChange="show() onChange="hide1()"> то есть двойной атрибут onChange... Цитата Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.