JavaScript: Fehler bei Umlauten beim laden von HTML in eine Seite

Dieses Thema JavaScript: Fehler bei Umlauten beim laden von HTML in eine Seite im Forum "Webentwicklung, Hosting & Programmierung" wurde erstellt von Scarface_666, 2. März 2007.

Thema: JavaScript: Fehler bei Umlauten beim laden von HTML in eine Seite Hallo, ich habe eine Homepage erstellt und wollte jetzt die Inhalte beim Click auf das Menü mittels JavaScript in...

  1. Hallo,

    ich habe eine Homepage erstellt und wollte jetzt die Inhalte beim Click auf das Menü mittels JavaScript in den Inhalts-div laden. Funktioniert soweit auch. Allerdings wird oft bei Umlauten, also ä, ö, ... dieses nicht richtig dargestellt bzw. auch Teile des Textes danach abgeschnitten.

    Hier noch das Script:
    Code:
    	var xmlHttp
    
    	function LadeInhalt(htmlDatei)
    	{
    		document.getElementById(Inhalt).innerHTML = ;
    		xmlHttp = GetXmlHttpObject()
    		if (xmlHttp == null)
    		{
    			alert (Your browser does not support AJAX!);
    			return;
    		} 
    		var url = htmlDatei;
    		xmlHttp.onreadystatechange = stateChanged;
    		xmlHttp.open (GET, url, true);
    		xmlHttp.send (null);
    	} 
    
    	function stateChanged() 
    	{ 
    		if (xmlHttp.readyState == 4)
    		{ 
    			document.getElementById(Inhalt).innerHTML += xmlHttp.responseText;
    		}
    	}
    
    	function GetXmlHttpObject()
    	{
    		var xmlHttp=null;
    		try
    		{
    			// Firefox, Opera 8.0+, Safari
    			xmlHttp=new XMLHttpRequest();
    		}
    		catch (e)
    		{
    			// Internet Explorer
    			try
    			{
    				xmlHttp = new ActiveXObject(Msxml2.XMLHTTP);
    			}
    			catch (e)
    			{
    				xmlHttp = new ActiveXObject(Microsoft.XMLHTTP);
    			}
    		}
    		return xmlHttp;
    	}

    Habt ihr eine Idee, woran das liegen könnte?

    Gruß
    Christian
     
  2. Hängt davon ab, welches Zeichensatzencoding (charset!) die geholten Inhalte haben und welches deine eigene Seite!
     
  3. Hi,

    sollte eigentlich alles gleich sein. Ist ja alles von mir erstellt, aber wie finde ich das denn raus?

    Gruß
    Christian
     
  4. Falls die Datei, die per AJAX eingelesen wird, eine *.php sein sollte, solltest du utf8_encode verwenden.

    Code:
    <?php
    echo utf8_encode(Der anzuzeigende Text äöüÄÖÜ);
    ?>
    
     
  5. Ist kein PHP. Ganz normale HTML-Daten.

    Gruß
    Christian
     
  6. Wenn es nicht zu viel zu ändern ist, mach halt aus der *.html eine *.php
    Den ganzen HTML-Output schreibst du dann in eine Variable und die gibst du mittels echo utf8_encode($variable) wieder aus ;)

    z.B.
    Code:
    <?php
    $variable =->
    <table width=100% align=center>
     <tr>
      <td align=center>Hallo Text äöüÄÖÜ</td>
     </tr>
    </table>
    ';
    
    echo utf8_encode($variable);
    ?>
    
    Das kannste ja mal als Testdatei speichern und per AJAX aufrufen, dann wissen wir schonmal ob der Weg der richtige ist ;)
     
Die Seite wird geladen...

JavaScript: Fehler bei Umlauten beim laden von HTML in eine Seite - Ähnliche Themen

Forum Datum
Firefox zeigt Website (JavaScript) fehlerhaft an Web-Browser 1. Feb. 2010
Javascript Fehlermeldung Web-Browser 4. Feb. 2006
Netscape Mail meldet Javascriptfehler und bleibt zu Sonstiges rund ums Internet 1. Feb. 2004
Javascript-Fehler Sonstiges rund ums Internet 22. Juni 2003
Firefox 23.0.1 Javascript verschwunden..... Web-Browser 30. Aug. 2013