# Umlaute bei Ajax-Requests



## jacquipre (28. April 2008)

Hallo.

Ich habe ein Problem mit meiner Anwendung und dem Character Encoding. Ich hab zwar schon viel gegooglet, aber alle bisherigen Versuche, das Problem zu beheben, sind gescheitert. 

Wenn ich die Seite komplett neu lade, dann werden alle Umlaute korrekt angezeigt. Lade ich nur einen Teil der Seite, d.h. nur ein Div mittels Ajax-Funktionen, dann entstehen aus den Umlauten merkwürdige Zeichen. Wie muss das Encoding eingestellt sein? 

In meinem META-Tag steht 

```
<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=iso-8859-1" />
```

Meine Ajax-Funktionen sehen so aus:

```
function ajax_create_xmlHttp_object() {

	var xmlHttp = null;
	
	// Mozilla, Opera, Safari sowie Internet Explorer 7
	if (typeof XMLHttpRequest != 'undefined') 
	{
    	xmlHttp = new XMLHttpRequest();
	}
	if (!xmlHttp) 
	{
    	// Internet Explorer 6 und ?lter
    	try 
		{
	        xmlHttp  = new ActiveXObject("Msxml2.XMLHTTP");
	    } 
		catch(e) 
		{
        	try 
			{
	            xmlHttp  = new ActiveXObject("Microsoft.XMLHTTP");
        	} 
			catch(e) 
			{
	            xmlHttp  = null;
        	}
    	}
	}
    return xmlHttp
}

function ajax_getURLContent( ajaxRequest, targetDivId , xpos, ypos, bAsync,evalResult)
{
	var xmlHttp = ajax_create_xmlHttp_object() ;
	
	if( xmlHttp ) 
	{
		// request url
		var url = ajaxRequest;

	    xmlHttp.open('GET', url, bAsync);
		// setup a callback method for the server's answer
	    xmlHttp.onreadystatechange = function () 
		{
                    if (xmlHttp.readyState == 4) 
                    {
                            onDownloadDone( xmlHttp.responseText , targetDivId, xpos, ypos, evalResult);
                    }
		};
    	
		xmlHttp.send(null);
	}
}
```

Ajax überträgt doch generell in UTF-8, oder? Muss ich da noch was umwandeln? Wenn ja, wie?


-- jacquipre


----------



## Gumbo (28. April 2008)

Es wird das übertragen was der Server sendet. Wenn du ISO 8859-1 verwendest, sollte der Server ebenfalls ISO 8859-1 verwenden.


----------



## jacquipre (28. April 2008)

Aber warum werden dann beim Neuladen der Seite die Umlaute richtig dargestellt und beim Laden des Divs nicht? Das ist mir noch nicht so ganz klar...


----------



## KD3 (28. April 2008)

Weil die Daten aus der SQL Datenbank kommen (nehme ich an) und diese schon codiert wurden. Du solltest wenn schon: UTF-8 im Dokument und auch im SQL-Server verwenden oder die Codierung die du gerne möchtest.


----------

