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 jQuery Basics Introducing jQuery Getting Values from Form Fields

need assistance

I'm having trouble completing this task, am I'm doing something wrong?

index.html
<!DOCTYPE html>
<html lang="en">
<head>
    <title>Document</title>
</head>
<body>
    <h2 class="profile-name">Treasure Porth</h2>
    <p class="profile-text">I am a web developer!</p>

    <label>Change name:<input id="name-input" type="text"></label>
    <button>Change</button>

    <script
    src="jquery-3.2.1.min.js"></script>
    <script src="app.js"></script>
</body>
</html>
app.js
$('button').click(function() {
  // Write code here
const newName = $("#name-input").val()
const constant =    $(".profile-name").text("newName")
});

1 Answer

Tim Acker
seal-mask
PLUS
.a{fill-rule:evenodd;}techdegree seal-36
Tim Acker
Front End Web Development Techdegree Graduate 31,247 Points
$('button').click(function() {
  // Write code here
  const newName = $("#name-input").val();
  $(".profile-name").text(newName);
});

When you are setting the text in .profile-name, you are passing the text method a variable called newName. Since this is a variable and not at string, you do not enclose it in quotes. Also, you don't need to assign $(".profile-name").text(newName); to a variable since you are using the text method as a setter function by passing in an argument. If you were using the text method as a getter function then something like const profileName = $(".profile-name").text(); without an argument would make sense.