function createXMLHttp() {
var XmlHttp;
if (window.ActiveXObject)
{
var arr=["MSXML2.XMLHttp.6.0","MSXML2.XMLHttp.5.0", "MSXML2.XMLHttp.4.0",
"MSXML2.XMLHttp.3.0","MSXML2.XMLHttp","Microsoft.XMLHttp"];
for(var i=0;i<arr.length;i++) {
try {
XmlHttp = new ActiveXObject(arr[i]);
return XmlHttp;
}
catch(error) { }
}
} else {
try {
XmlHttp=new XMLHttpRequest();
return XmlHttp;
}
catch(otherError) { }
}
}
function xmlPost() {
var xmlHttp = createXMLHttp();
var url= 'TicketHandler.ashx?t=' + new Date();
xmlHttp.open('GET',url,true);
xmlHttp.onreadystatechange = function() {
if(xmlHttp.readyState == 4 && xmlHttp.status == 200) {
var result = xmlHttp.responseText;
if (result && result.length > 0){
result = result.split(',');
var left;
for (var i=0; i<result.length; i++){
left = document.getElementById('left_' + result[i].split(':')[0]);
if (left){
left.innerHTML = result[i].split(':')[1];
}
}
}
}
}
xmlHttp.send('');
}
很多人经常遇到在Firefox浏览器下不work的时候,请注意上述代码的大小写,比如:
xmlHttp.readyState == 4 && xmlHttp.status == 200 和 xmlHttp.responseText ,如果大小写有误,那么在Firefox浏览器下很可能会出现undefine的错误。