5.8 KiB
5.8 KiB
id | title | challengeType | videoUrl | localeTitle |
---|---|---|---|---|
bad87fee1348bd9aedf08834 | Create a Set of Radio Buttons | 0 | Создание набора кнопок радиосвязи |
Description
radio buttons
для вопросов, в которых вы хотите, чтобы пользователь дал вам один ответ из нескольких вариантов. Кнопки радио - это тип input
. Каждый из ваших переключателей может быть вложен в свой собственный элемент label
. Обернув элемент input
внутри элемента label
он автоматически свяжет входной переключатель с окружающим его элементом метки. Все связанные радиокнопки должны иметь одинаковый атрибут name
для создания группы переключателей. Создавая группу радиостанций, при выборе любого одного переключателя автоматически отменяется выбор других кнопок в пределах одной группы, гарантируя пользователю только один ответ. Вот пример переключателя: <Метка>Рекомендуется использовать атрибут
<input type = "radio" name = "indoor-outdoor"> Крытый
</ Метка>
for
атрибута элемента label
со значением, которое соответствует значению атрибута id
input
элемента. Это позволяет вспомогательным технологиям создавать взаимосвязанные отношения между меткой и элементом input
. Например: <label for = "indoor">
<input id = "indoor" type = "radio" name = "indoor-outdoor"> Крытый
</ Метка>
Instructions
indoor
а у другого - возможность outdoor
. Оба должны совместно использовать атрибут name
indoor-outdoor
чтобы создать группу радиостанций. Tests
tests:
- text: На вашей странице должно быть два элемента переключателя.
testString: 'assert($("input[type="radio"]").length > 1, "Your page should have two radio button elements.");'
- text: Дайте ваше радио кнопки на <code>name</code> атрибут <code>indoor-outdoor</code> .
testString: 'assert($("label > input[type="radio"]").filter("[name="indoor-outdoor"]").length > 1, "Give your radio buttons the <code>name</code> attribute of <code>indoor-outdoor</code>.");'
- text: Каждый из ваших двух элементов переключателя должен быть вложен в свой собственный элемент <code>label</code> .
testString: 'assert($("label > input[type="radio"]:only-child").length > 1, "Each of your two radio button elements should be nested in its own <code>label</code> element.");'
- text: 'Убедитесь, что каждый из ваших элементов <code>label</code> имеет закрывающий тег.'
testString: 'assert((code.match(/<\/label>/g) && code.match(/<label/g) && code.match(/<\/label>/g).length === code.match(/<label/g).length), "Make sure each of your <code>label</code> elements has a closing tag.");'
- text: Один из ваших переключателей должен иметь ярлык в <code>indoor</code> .
testString: 'assert($("label").text().match(/indoor/gi), "One of your radio buttons should have the label <code>indoor</code>.");'
- text: Один из ваших переключателей должен иметь ярлык на <code>outdoor</code> .
testString: 'assert($("label").text().match(/outdoor/gi), "One of your radio buttons should have the label <code>outdoor</code>.");'
- text: Каждый элемент вашего переключателя должен быть добавлен в тег <code>form</code> .
testString: 'assert($("label").parent().get(0).tagName.match("FORM"), "Each of your radio button elements should be added within the <code>form</code> tag.");'
Challenge Seed
<h2>CatPhotoApp</h2>
<main>
<p>Click here to view more <a href="#">cat photos</a>.</p>
<a href="#"><img src="https://bit.ly/fcc-relaxing-cat" alt="A cute orange cat lying on its back."></a>
<p>Things cats love:</p>
<ul>
<li>cat nip</li>
<li>laser pointers</li>
<li>lasagna</li>
</ul>
<p>Top 3 things cats hate:</p>
<ol>
<li>flea treatment</li>
<li>thunder</li>
<li>other cats</li>
</ol>
<form action="/submit-cat-photo">
<input type="text" placeholder="cat photo URL" required>
<button type="submit">Submit</button>
</form>
</main>
Solution
// solution required