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 AJAX Basics AJAX Concepts Finish the AJAX Request

Did you call send() on the request object?

Hi. I've gotten such error "Did you call send() on the request object?", however I don't know what is wrong. (Because I wrote "send();" in the request object.)Can you give me an advice please?

app.js
var request = new XMLHttpRequest();
request.onreadystatechange = function () {
  if (request.readyState === 4) {
    document.getElementById("footer").innerHTML = request.responseText;
  }
};

request.open("GET", "footer.html");
function sendAJAX() {
  request.send();
}
index.html
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>AJAX with JavaScript</title>
  <script src="app.js"></script>
</head>
<body>
  <div id="main">
    <h1>AJAX!</h1>
  </div>
  <div id="footer"></div>
</body>
</html>

1 Answer

Hi, I saw from another post that you don't have to make function sendAJAX() {

request.open("GET", "footer.html");
function sendAJAX() {
  request.send();
}

Unless you call it in the index.html body like in the video tutorial which includes the

<button id="load" onclick="sendAJAX()">Bring it!</button> 

Below is the straightforward answer to the challenge.

request.open("GET", "footer.html");
  request.send();