Как скрыть/показать список radio кнопок при переключении checkbox?

Как сделать, чтобы вот это содержимое открывалось только после того, как пользователь поставит галочку в checkbox:

<div class="block83">
      <p1>Выбери специальность:</p1><br />
    <input type="radio" value="Chirurg" name="countries[]" class="inputradio123"> <p>Хирург.</p> <br/>
    <input type="radio" value="Neurolog" name="countries[]" class="inputradio123">  <p>Невролог.</p> <br/>
    <input type="radio" value="Psycholog" name="countries[]" class="inputradio123"> <p>Психолог.</p> <br/>
    <input type="radio" value="Terapeuta" name="countries[]" class="inputradio123">  <p>Терапевт.</p> <br/>
    
    </div>

Checkbox:

<div class="block50">
     <input type="checkbox" name="check1" value="1" class="inputradio" /> <p>Я врач.</p> 
    
    </div>
  • Вопрос задан
  • 570 просмотров
Решения вопроса 2
0xD34F
@0xD34F Куратор тега CSS
.hidden {
  display: none;
}

const checkbox = document.querySelector('.block50 input');
const block = document.querySelector('.block83');
const onChange = e => block.classList.toggle('hidden', !e.target.checked);
checkbox.addEventListener('change', onChange);

UPD. Вынесено из комментариев:

список скрывается только после того, когда поставишь и уберешь галочку

Добавляем класс элементу:

<div class="block83 hidden">

Или отправляем ему событие change, чтобы обработчик сработал и класс добавил:

checkbox.dispatchEvent(new Event('change'));

UPD. Наконец-то дождались, теперь js тут использовать не обязательно:

body:not(:has(.block50 :checked)) .block83 {
  display: none;
}
Ответ написан
etrid
@etrid
<div class="block50">
     <input type="checkbox" name="check1" value="1" class="inputradio" onclick="go()"/> <p>Я врач.</p> 
    
    </div>

<div class="block83" id="check" style="display:none;">
      <p1>Выбери специальность:</p1><br />
    <input type="radio" value="Chirurg" name="countries[]" class="inputradio123"> <p>Хирург.</p> <br/>
    <input type="radio" value="Neurolog" name="countries[]" class="inputradio123">  <p>Невролог.</p> <br/>
    <input type="radio" value="Psycholog" name="countries[]" class="inputradio123"> <p>Психолог.</p> <br/>
    <input type="radio" value="Terapeuta" name="countries[]" class="inputradio123">  <p>Терапевт.</p> <br/>
    
    </div>

<script>
function go()
{
  $('#check').css('display,'block');
}
</script>
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
23 нояб. 2024, в 01:31
1000 руб./за проект
23 нояб. 2024, в 00:16
2000 руб./за проект
22 нояб. 2024, в 23:55
3000 руб./за проект