WiZdooM
Erfahrenes Mitglied
Hallo
Ich nutze folgende Funktion um in ein DIV inhalte Dynamisch einzuladen:
Dieser Code funktioniert im Firefox tadellos, aber im Internet Explorer ist der Mime-Type immer UTF-8. Schreibe ich
nicht in den Try-Catch-Block, bricht der IE die Funktion an dieser Stelle ab, während der FF ohne Probleme den Mime-Type überschreiben kann.
Ich bin jetzt leider nicht der Profi in Sachen Ajax und Java(script), daher habe ich keinen blassen Dunst, wie ich den IE dazu überreden kann den MimeType nach dem Open zu verändern. Ich hatte es bereits mit setMimeType versucht, aber das führte ebenfalls zu einem Fehler.
Wie kann ich nun den MimeType im IE setzen ?
Ich nutze folgende Funktion um in ein DIV inhalte Dynamisch einzuladen:
Code:
function loadFragmentInToElement(fragment_url, element_id) {
var xmlhttp=false;
/*@cc_on @*/
/*@if (@_jscript_version >= 5)
// JScript gives us Conditional compilation, we can cope with old IE versions.
// and security blocked creation of the objects.
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
xmlhttp = false;
}
}
@end @*/
if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
try {
xmlhttp = new XMLHttpRequest();
} catch (e) {
xmlhttp=false;
}
}
if (!xmlhttp && window.createRequest) {
try {
xmlhttp = window.createRequest();
} catch (e) {
xmlhttp=false;
}
}
var element = document.getElementById(element_id);
element.innerHTML = '<p><em>Loading ...</em></p>';
element.style.marginLeft = "20px";
xmlhttp.open("GET", fragment_url);
try{
xmlhttp.overrideMimeType("text/html; charset=ISO-8859-1");
}
catch(e){
}
//xmlhttp.overrideMimeType("text/html; charset=ISO-8859-1");
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
element.style.marginLeft = "0px";
element.innerHTML = xmlhttp.responseText;
}
}
xmlhttp.send(null);
}
Dieser Code funktioniert im Firefox tadellos, aber im Internet Explorer ist der Mime-Type immer UTF-8. Schreibe ich
Code:
xmlhttp.overrideMimeType("text/html; charset=ISO-8859-1");
Ich bin jetzt leider nicht der Profi in Sachen Ajax und Java(script), daher habe ich keinen blassen Dunst, wie ich den IE dazu überreden kann den MimeType nach dem Open zu verändern. Ich hatte es bereits mit setMimeType versucht, aber das führte ebenfalls zu einem Fehler.
Wie kann ich nun den MimeType im IE setzen ?