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 the function that will process the response from a server. The following code defines an empty function and sets the onreadystatechange property at the same time:

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;
}
}