AJAX - The XMLHttpRequest Object
AJAX - More about the XMLHttpRequest object
Before sending data off to a server, we will look at three important properties of the XMLHttpRequest object.
The onreadystatechange property
After a request to a server, we need a function to receive the data returned
from the server.
The onreadystatechange property stores the function that will process the response from a server.
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 property changes,
the onreadystatechange function will be executed.
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 |
Add an If statement to the onreadystatechange function to test if
the response is complete (means that now we can get our data):
xmlhttp.onreadystatechange=function()
{
if(xmlhttp.readyState==4)
{
// Get data from the server's response
}
} |
The responseText property
The data sent back from a server can be retrieved with the responseText property.
Now, we want to set the value of the "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 a server for data!

Need an easy way to get data into XML, or transform XML to another format?
MapForce lets you map XML data to/from any combination of XML, database, flat file, Excel 2007, XBRL, or Web services data.
Then it transforms data instantly or auto-generates royalty-free data integration code for recurrent conversions.
New features in Version 2010!
Download a free, fully functional 30-day trial to experience the following features:
- Easy-to-use, graphical data mapping interface
- Instant data transformation
- XSLT 1.0/2.0 and XQuery code generation
- Java, C#, and C++ code generation
- Advanced data processing functions
- Support for all major relational databases including SQL Server, IBM DB2, Oracle, and more
- Visual Studio & Eclipse integration
Download a fully-functional trial today!
|
|
|
|