Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

JavaScript JavaScript and the DOM Getting a Handle on the DOM Select by ID

Chiaki Yamada
seal-mask
.a{fill-rule:evenodd;}techdegree seal-36
Chiaki Yamada
Front End Web Development Techdegree Graduate 14,523 Points

I don't know what's wrong with this code

Task: Next, declare a new variable named input. Point the variable to the input element with the ID input-phrase. Use the method that returns an element matching the specified ID.

I was not able to pass this task and don't know what's wrong with my code.

app.js
// Complete the challenge by writing JavaScript below
const button = document.getElementById ('btn-phrase');
const input = document.getElementById ('input-phrase');

button.addEventListener('click', () => {
  alert(input.value);
});
index.html
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>Phrase Sayer</title>
  </head>
  <body>
    <p><label for="input-phrase">Type a phrase</label></p>
    <p><input type="text" id="input-phrase"></p>
    <p><button id="btn-phrase">Say Phrase</button></p>
    <script src="app.js"></script>
  </body>
</html>

1 Answer

Mark Sebeck
MOD
Mark Sebeck
Treehouse Moderator 37,763 Points

Hi Chiaki. What you have is correct but for some reason the challenge is being picky and not allowing a space between the method call and the parameter being passed. Delete the space and it should pass. Weird that it allows a space on the first one.

const input = document.getElementById('input-phrase');