IE和火狐兼容的AJAX寫法

方法一:

function gethttp(sid, url){
var xmlHttp;
if (window.ActiveXObject) {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
else if (window.XMLHttpRequest) {
xmlHttp = new XMLHttpRequest();
}

xmlHttp.onreadystatechange = function(){
if(xmlHttp.readyState == 4){
document.getElementById(sid).innerHTML = xmlHttp.responseText;
}
}

xmlHttp.open("POST",url,true);
xmlHttp.send(null);
}

方法二:

function gethttp(sid, url){
if (window.XMLHttpRequest) {
var req = new XMLHttpRequest();
if (req.overrideMimeType) {
req.overrideMimeType(''text/html'');
}
req.onreadystatechange = function(){
if (req.readyState == 4) {
if (req.status == 200) {
alert(id+" "+req.responseText);
document.getElementById(sid).innerHTML = req.responseText;
}
else {
alert("Problem with server response: "+ req.statusText);
}
}
}

try {
req.open("POST", url, true);
}
catch (e) {
alert("Server Communication Problem "+e);
}

req.setRequestHeader("Cache-Control","no-cache");
req.setRequestHeader("If-Modified-Since",new Date(0));
req.setRequestHeader("Content-length", url.length);
req.setRequestHeader("Connection", "close");

req.send(null);
}
else
if (window.ActiveXObject) {

try{
var req = new ActiveXObject("Msxml2.XMLHTTP");
req.setRequestHeader("Content-Type","text/xml");
req.setRequestHeader("Content-Type","gb2312");
}catch(e){
try {
req = new ActiveXObject("Microsoft.XMLHTTP");
}catch (e){}
}

req = new ActiveXObject("Microsoft.XMLHTTP");

if (req) {
req.onreadystatechange=function(){
if (req.readyState == 4) {
if (req.status == 200) {
alert(id+" "+req.responseText);
document.getElementById(sid).innerHTML = req.responseText;
}
else {
alert("Problem with server response: "+ req.statusText);
}
}
}
req.open("POST", url, true);

req.setRequestHeader("Cache-Control","no-cache");
req.setRequestHeader("If-Modified-Since",new Date(0));
req.setRequestHeader("Content-length", url.length);
req.setRequestHeader("Connection", "close");

req.send(null);
}

}
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章