AJAX XMLHttpRequest Object

From http://www.w3schools.com (Copyright Refsnes Data)

# AJAX - The XMLHttpRequest Object

## AJAX - More About the XMLHttpRequest Object

Before sending data to the server, we have to explain three important properties of the XMLHttpRequest object.

### The onreadystatechange Property

After a request to the server, we need a function that can receive the data that is returned by the server.

The onreadystatechange property stores your function that will process the response from a server. This is not a method, the function is stored in the property to be called automatically. The following code sets the onreadystatechange property and stores an empty function inside it:

    xmlHttp.onreadystatechange=function()
    {
    // We are going to write some code here
    }

### The readyState Property

The readyState property holds the status of the server's response. Each time the readyState changes, the onreadystatechange function will be executed.

Here are the possible values for the readyState property:

State | Description
--- | ---
0 | The request is not initialized
1 | The request has been set up
2 | The request has been sent
3 | The request is in process
4 | The request is complete

We are going to add an If statement to the onreadystatechange function to test if our response is complete (this means that we can get our data):

    xmlHttp.onreadystatechange=function()
    {
    if(xmlHttp.readyState==4)
      {
      // Get the data from the server's response
      }
    }

### The responseText Property

The data sent back from the server can be retrieved with the responseText property.

In our code, we will set the value of our "time" input field equal to responseText:

    xmlHttp.onreadystatechange=function()
    {
    if(xmlHttp.readyState==4)
      {
      document.myForm.time.value=xmlHttp.responseText;
      }
    }

The next chapter shows how to ask the server for some data!

From http://www.w3schools.com (Copyright Refsnes Data)