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 (Retiring) Making Changes to the DOM Modifying Elements

I can't target the input element correctly

I'm unable to target the input element correctly - I've attempted document.getElementById('linkName') - I've also tried document.querySelector('input #linkName') with no luck. I'm not sure what selector the program is expecting and if i'm not properly linking the parent element?

app.js
var inputValue = document.getElementById('linkName');
index.html
<!DOCTYPE html>
<html>
    <head>
        <title>DOM Manipulation</title>
    </head>
    <link rel="stylesheet" href="style.css" />
    <body>
        <div id="content">
            <label>Link Name:</label>
            <input type="text" id="linkName">
            <a id="link" href="https://teamtreehouse.com"></a>
        </div>
        <script src="app.js"></script>
    </body>
</html>

1 Answer

Hey Jennifer Inabinet,

Your code is correct. You just need to add a value property after the selection. You can use any of the following methods to select an element:

var inputValue = document.getElementById('linkName').value; 

OR

var inputValue = document.querySelector('#linkName').value;

To learn more about value property, check out this resource - https://www.w3schools.com/jsref/prop_text_value.asp

Hope this helps!