XMLHttpRequest Object (1)
What is the XMLHttpRequest Object? The XMLHttpRequest object provides a way
to communicate with a server after a web page has loaded. The XMLHttpRequest
object is supported in all modern browsers. With the XMLHttpRequest object,
you can:
- Update a web page with new data without reloading the page
- Request data from a server after the page has loaded
- Receive data from a server after the page has loaded
- Send data to a server in the background
In Javascript, to Create an XMLHttpRequest object, we use a single line.
In Internet Explorer 5 and 6:
var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")
In all modern browsers (including IE7):
var xmlhttp=new XMLHttpRequest()
For example
<script type="text/Javascript">
var xmlhttp;
function loadXMLDoc(url) {
xmlhttp=null;
if (window.XMLHttpRequest) {// code for all new browsers
xmlhttp=new XMLHttpRequest();
} else if (window.ActiveXObject) {// code for IE5 and IE6
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
if (xmlhttp!=null) {
xmlhttp.onreadystatechange=state_Change;
xmlhttp.open("GET",url,true);
xmlhttp.send(null);
} else {
alert("Your browser does not support XMLHTTP.");
}
}
function state_Change() {
if (xmlhttp.readyState==4) {// 4 = "loaded"
if (xmlhttp.status==200) {// 200 = OK
// ...our code here...
} else {
alert("Problem retrieving XML data");
}
}
}
</script>
In the script above, "onreadystatechange" is an event handler. The
value (state_Change) is the name of a function which is triggered when the state
of the XMLHttpRequest object changes. States run from 0 (uninitialized) to 4
(complete). Only when the state = 4, we can execute our code.
|