Cat Photos
Click here to view more cat photos.

Cat Lists
Things cats love:
- cat nip
- laser pointers
- lasagna

Top 3 things cats hate:
- flea treatment
- thunder
- other cats

--- id: 5f1a89f1190aff21ae42105a title: Step 59 challengeType: 0 dashedName: step-59 --- # --description-- Like radio buttons, form data for selected checkboxes are `name` / `value` attribute pairs. While the `value` attribute is optional, it's best practice to include it with any checkboxes or radio buttons on the page. Add a `value` attribute to each checkbox. For convenience, set each checkbox's `value` attribute to the same value as its `id` attribute. # --hints-- All three checkboxes should have a `value` attribute. Check that there is a space after the opening tag's name and/or there are spaces before all attribute names. ```js const checkboxes = [...document.querySelectorAll('input[type="checkbox"]')]; assert(checkboxes.every((checkbox) => checkbox.hasAttribute('value'))); ``` The `value` attribute of the `Loving` checkbox should be set to `loving`. You have either omitted the value or have a typo. Remember that attribute values should be surrounded with quotation marks. ```js const lovingCheckbox = document.querySelector('#loving'); assert(lovingCheckbox.getAttribute('value').match(/^loving$/)); ``` The `value` attribute of the `Lazy` checkbox should be set to `lazy`. You have either omitted the value or have a typo. Remember that attribute values should be surrounded with quotation marks. ```js const lazyCheckbox = document.querySelector('#lazy'); assert(lazyCheckbox.getAttribute('value').match(/^lazy$/)); ``` The `value` attribute of the `Energetic` checkbox should be set to `energetic`. You have either omitted the value or have a typo. Remember that attribute values should be surrounded with quotation marks. ```js const energeticCheckbox = document.querySelector('#energetic'); assert(energeticCheckbox.getAttribute('value').match(/^energetic$/)); ``` # --seed-- ## --seed-contents-- ```html
Click here to view more cat photos.