Biergamasda
Erfahrenes Mitglied
Hi Leute, hab ein kleines Problem.
Ich mach mir einen HTTPRequest, konfiguriere ihn und setze ihn ab, so weit, so gut.
Das Problem ist jezt nur, dass die auszuführende Funktiion nie ausgeführt wird, ich aber keine Ahnung habe wieso, habe es bisher immer so gemacht und hatte eigentlich keine Probleme damit.
So, der Code:
und eine der funktionen:
Es müsste nicht die ganze makeRequest funktion sein, aber ich denke mir is besser zum Verständnis
Vielen Dank schon mal für die Hilfe und... frohe Weihnachten
mfg me
Ich mach mir einen HTTPRequest, konfiguriere ihn und setze ihn ab, so weit, so gut.
Das Problem ist jezt nur, dass die auszuführende Funktiion nie ausgeführt wird, ich aber keine Ahnung habe wieso, habe es bisher immer so gemacht und hatte eigentlich keine Probleme damit.
So, der Code:
Javascript:
function makeRequest(url, action) {
var httpRequest;
//Beginn anlegen des XMLHTTPREquest objektes (FINGER WEG)
if (window.XMLHttpRequest) { // Mozilla, Safari, ...
httpRequest = new XMLHttpRequest();
if (httpRequest.overrideMimeType) {
httpRequest.overrideMimeType('text/xml');
}
} else if (window.ActiveXObject) { // IE
try {
httpRequest = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {
}
}
}
if (!httpRequest) {
alert('Giving up :( Cannot create an XMLHTTP instance');
return false;
}
switch(action) {
case SHOW_CONTENT:
httpRequest.onreadystatechange = function() { printContent(httpRequest); };
httpRequest.open('GET', url, false);
httpRequest.send('');
break;
case SHOW_NEWS:
httpRequest.onreadystatechange = function() { printNews(httpRequest); };
httpRequest.open('GET', url, false);
httpRequest.send('');
break;
case ADD_GB_ENTRY:
//ersetzen des buttons duch "einen Moment bitte..."
elem = document.getElementById("addGbEntryCont");
tn = document.createTextNode("einen Moment bitte...")
el = document.getElementById("addGbEntryBut");
elem.replaceChild(tn,el);
//button ersetzt
author = document.getElementById('gbEntryName').value;
msg = formatMessage(document.getElementById('gbEntryMsg').value);
httpRequest.onreadystatechange = function() { entryAdded(httpRequest); };
httpRequest.open('GET', url + "?author=" + author + "&msg=" + msg, true);
httpRequest.send('');
break;
case ADJUST:
httpRequest.onreadystatechange = function() { adjusted(httpRequest); };
url=url.split('?');
httpRequest.open('POST', url[0], false);
httpRequest.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
httpRequest.setRequestHeader("Content-length", url[1].length);
httpRequest.setRequestHeader("Connection", "close");
httpRequest.send(url[1]);
break;
}
return true;
}
und eine der funktionen:
Javascript:
function printContent(httpRequest) {
if (httpRequest.readyState == 4) {
if (httpRequest.status == 200) {
document.getElementById("content").innerHTML = httpRequest.responseText;
} else {
alert('There was a problem with the request.');
}
}
}
Es müsste nicht die ganze makeRequest funktion sein, aber ich denke mir is besser zum Verständnis
Vielen Dank schon mal für die Hilfe und... frohe Weihnachten
mfg me