Работа с радиокнопочками
radio
несколько отличается, к примеру,
от тех же чекбоксов. Проблема в том, что
у нескольких радио будет один и тот же стейт,
но разные value
.
Поэтому работа происходит следующем образом:
каждой радиокнопке в атрибут value
записывают свое значение, а в атрибут checked
- специальное условие, которое проверяет,
равен ли стейт определенному значению. Если
равен - радиокнопочка станет отмеченной,
а если не равен - будет не отмеченной.
Вот реализация описанного:
function App() {
const [value, setValue] = useState(1);
function changeHandler(event) {
setValue(event.target.value);
}
return <div>
<input
type="radio"
name="radio"
value="1"
checked={value === '1' ? true : false}
onChange={changeHandler}
/>
<input
type="radio"
name="radio"
value="2"
checked={value === '2' ? true : false}
onChange={changeHandler}
/>
<input
type="radio"
name="radio"
value="3"
checked={value === '3' ? true : false}
onChange={changeHandler}
/>
</div>
}
Даны 3
радиокнопочки. Дан абзац. Сделайте
так, чтобы значение выбранной радиокнопочки
выводилось в этот абзац.
С помощью радиокнопочек спросите у пользователя его любимый язык программирования. Выведите его выбор в абзац. Если выбран язык JavaScript, похвалите пользователя.