Archief - XMLHttpRequest en IE

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Blood_Raven

Legacy Member
Ik heb een probleem met een enkele ajax calls naar een webpagina. Google chrome en Firefox slagen er blijkbaar in om deze zonder enige fout uit te voeren maar bij Internet Explorer gebeurt er gewoon niets. :(

Ik heb een alert toegevoegd en deze zegt 'undefined' bij het draaien in IE.

PHP:
var xmlcontent=false;
var xmllist=false;
var xmltabs=false;
var xmlpost=false;
/*@cc_on @*/
/*@if (@_jscript_version >= 5)
try {
	xmlcontent = new ActiveXObject("Msxml2.XMLHTTP");
	xmllist = new ActiveXObject("Msxml2.XMLHTTP");
	xmltabs = new ActiveXObject("Msxml2.XMLHTTP");
	xmlpost = new ActiveXObject("Msxml2.XMLHTTP");
} 
catch (e) {
    try {
		xmlcontent = new ActiveXObject("Microsoft.XMLHTTP");
		xmllist = new ActiveXObject("Microsoft.XMLHTTP");
		xmltabs = new ActiveXObject("Microsoft.XMLHTTP");
		xmlpost = new ActiveXObject("Microsoft.XMLHTTP");
	} 
	catch (E) {
		xmlcontent = false;
		xmllist = false;
		xmltabs = false;
		xmlpost = false;

	}
}
@end @*/
if (!xmlcontent && typeof XMLHttpRequest != 'undefined') {
    xmlcontent = new XMLHttpRequest();
}
else {
	alert('undefined');
}
if (!xmllist && typeof XMLHttpRequest != 'undefined') {
    xmllist = new XMLHttpRequest();
}
if (!xmltabs && typeof XMLHttpRequest != 'undefined') {
    xmltabs = new XMLHttpRequest();
}
if (!xmlpost && typeof XMLHttpRequest != 'undefined') {
    xmlpost = new XMLHttpRequest();
}

function request(request,divID, xml) {
    if (xml) {
        d=document
        var oInputArray = new Array();
        xml.open("GET", request ,true);
        xml.onreadystatechange= function () {
            if (xml.readyState == 4) {
		//This shouldn't happen, go back to the main page
		if(xml.responseText.substring(0,2) == "<!") {
			window.location ="/";
		}
                document.getElementById(divID).innerHTML=xml.responseText
            }
        }
        xml.send(null)
    }
}

function postMessage() {
	if (xmlpost) {
        var params = "input=" + document.getElementById("input").value;
		
        xmlpost.open("POST", "post" ,true);
		
		// Send parameters
		xmlpost.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
		xmlpost.setRequestHeader("Content-length", params.length);
		xmlpost.setRequestHeader("Connection", "close");

        xmlpost.onreadystatechange = function () {
            if (xmlpost.readyState == 4) {
                document.getElementById("input").value="";
            }
        }
        xmlpost.send(params)
    }
}

var x
function update() {
	request("content", "contentholder", xmlcontent);
	request("tabs", "tabholder", xmltabs);
	request("list", "listholder", xmllist);

	x = setTimeout("update()",1000);
}

Optioneel, is er ook een manier hoe ik één XMLHttpRequest kan gebruiken in plaats van 4? Ik heb eigenlijk nog geen ervaring op dit gebied.

Blood_Raven

Legacy Member
Ik heb het denk ik gevonden. Wanneer ik mijn webserver de 'last modified' header laat meezenden werkt alles wel in IE. Bon fixed dus
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan