HTML / CSS / PHP Скрыть значения формы с помощью радиокнопок

Я пытался создать несколько вариантов формы входа. Я хочу, чтобы в моей форме было два варианта: вход по имени пользователя или вход по электронной почте. Я хочу использовать радиокнопки, чтобы пользователь мог выбрать способ входа в систему. Мне было интересно, есть ли способ сделать это с помощью html / css / php или мне нужно научиться использовать что-то еще? Я не вижу примеров этого.

Вот несколько иллюстраций с примерами того, что я хочу:

По умолчанию я хочу, чтобы он выглядел так:
HTML / CSS / PHP Скрыть значения формы с помощью радиокнопок

Когда выбраны радиокнопки, я хочу, чтобы это выглядело так:
HTML / CSS / PHP Скрыть значения формы с помощью радиокнопок

HTML / CSS / PHP Скрыть значения формы с помощью радиокнопок

Мой текущий код выглядит примерно так (это мой код с обоими текстовыми полями)

<form method='post'>
    <input type = "radio" name = "reason" value = "email">Login with Email<br> <input type = "text" name = "email_text"/><br>
    <input type = "radio" name = "reason" value = "user">Login with Username<br> <input type = "text" name = "user_text"/><br>
    <button type = "submit" class = "btn btn-primary">Login</button>
</form>

Используйте методы javascript, чтобы отображать / скрывать элементы «Имя пользователя» и «Электронная почта» при нажатии переключателей.

Pupil 31.03.2021 09:21

@MagnusEriksson, извини. Я был в потоке jQuery. Я изменю свой комментарий.

Pupil 31.03.2021 09:23
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
2
43
1

Ответы 1

Вы можете в значительной степени сделать это с помощью простого CSS, который использует комбинированный селектор sibling и атрибут :checked. Вы не можете выбрать предыдущий элемент, но можете выбрать следующий элемент с помощью +

input[type='text'],
input[type='password']{display:none}

:checked + input{display:block;}
<form method='post'>
    <input type = "radio" name = "reason" value = "email">Login with Email
    <input type = "text" name = "email_text"/>
    <br />
    
    <input type = "radio" name = "reason" value = "user">Login with Username
    <input type = "text" name = "user_text"/>
    <br />
    
    <button type = "submit" class = "btn btn-primary">Login</button>
</form>

Другие вопросы по теме