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 trialGary Christie
5,151 PointsStuck on Challenge Question
The Challenge question says: Select the second SPAN element on the page and assign it to the variable lastName on line 2. Take a look in the index.html to see the structure of the document.
app.js: var fullName = document.getElementById("full_name"); var lastName;
index.html: <!DOCTYPE html> <html> <head></head> <body> <h1 id="full_name"><span class="first_name">Andrew</span> <span class="last_name">Chalkley</span></h1>
<script src="app.js"></script> </body> </html>
var fullName;
var lastName;
<!DOCTYPE html>
<html>
<head></head>
<body>
<h1 id="full_name"><span class="first_name">Andrew</span> <span class="last_name">Chalkley</span></h1>
<script src="app.js"></script>
</body>
</html>
3 Answers
Robert Richey
Courses Plus Student 16,352 PointsHi Gary,
There are a couple ways to go about this. Similar to the first challenge, you'll need to assign an element to the lastName variable.
// the second span has a class name of last_name. even though there's only one matching element,
// an array is returned unless you specify the index of the element in the array you want.
document.getElementsByClassName("last_name")[0];
//or
// there are two spans in the document. need the second one
document.getElementsByTagName("span")[1];
curtis allen
28,800 PointsHi Gary, Here is the answer.
lastName = document.getElementsByTagName("span")[1];
Gary Christie
5,151 PointsThanks. I actually thought of that answer and thought that it couldn't possibly be it. The other answer you put getElementsByClassName I actually tried and it didn't go thru
Robert Richey
Courses Plus Student 16,352 PointsThat's odd, because that's the one I used to complete the challenge. I'll double check it.
Edit: this works for me
var fullName = document.getElementById("full_name");
var lastName = document.getElementsByClassName("last_name")[0];
curtis allen
28,800 PointsMaybe try to open the challenge in another browser and see if it takes the answer. I've had the same issue on other challenges. Also my answer is correct.