Wicki: Umlaute bei dynamischem Einfügen eines Texts in textarea

Hallo,

ich lese nach Klick auf einen a-Verweis eine externe HTML-Datei (ISO-8859-1) ein und zeige sie in einer "textarea" an (Realisierung mit jQuery). Dabei werden die Umlaute als Fragezeichen dargestellt.
Wie kann ich das vermeiden ohne die Datei umzuformen ?

Gruß Wicki

  1. ich lese nach Klick auf einen a-Verweis eine externe HTML-Datei (ISO-8859-1) ein und zeige sie in einer "textarea" an (Realisierung mit jQuery). Dabei werden die Umlaute als Fragezeichen dargestellt.

    Wie kann ich das vermeiden ohne die Datei umzuformen ?

    Wenn du mit "Umformen" meinst, die Zeichencodierung entsprechend zu beachten: gar nicht :)

    Ich geh stark davon aus, dass du die "externe" HTML-Datei eigentlich eine intere ist (same origin) die du mittels $.ajax() abholst.

    Einfach einen entsprechenden Content-Type im Settings-Argument mittels "contentType" angeben und die Sache sollte erledigt sein.

    1. Ich geh stark davon aus, dass du die "externe" HTML-Datei eigentlich eine intere ist (same origin) die du mittels $.ajax() abholst.

      Einfach einen entsprechenden Content-Type im Settings-Argument mittels "contentType" angeben und die Sache sollte erledigt sein.

      Datei ist intern und ich benutze
      jQuery.ajax(verw,{'contentType':'ISO-8859-1'});
      allerdings den gewünschten Effekt.

      Wicki

      1. Datei ist intern und ich benutze
        jQuery.ajax(verw,{'contentType':'ISO-8859-1'});
        allerdings den gewünschten Effekt.

        Das Ganze bitte nochmal in einer Sprache, die ich auch Spreche ...

        1. Datei ist intern und ich benutze
          jQuery.ajax(verw,{'contentType':'ISO-8859-1'});
          allerdings den gewünschten Effekt.

          Das Ganze bitte nochmal in einer Sprache, die ich auch Spreche ...

          Die Datei, die ich lese, ist intern (same domain).
          Der jQuery-Code zum Lesen der Datei ist:

          var obj=jQuery.ajax("datei.html",{'contentType':'charset=ISO-8859-1'});

          Danach steht der Text der gelesenen Datei in:

          obj.responseText;

          Gruß Wicki

            1. Was du da angibst ist kein Content-Type:
              http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.17
              http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.7

              auch das hatte ich schon:
              jQuery.ajax("datei.html",{'contentType':'text/html; charset=ISO-8859-1'});

              Wenn Du weißt wie der Parameter aussieht, bitte nenne ihn.

              Wicki

              1. Was du da angibst ist kein Content-Type:
                http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.17
                http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.7

                auch das hatte ich schon:
                jQuery.ajax("datei.html",{'contentType':'text/html; charset=ISO-8859-1'});

                Wenn Du weißt wie der Parameter aussieht, bitte nenne ihn.

                Ich kenne deine Dokumente nicht, also kann ich dir nicht sagen was richtig oder falsch ist - jedenfalls ist das jetzt ein sinnvoller Content-Type, der sich mit deiner Beschreibung deckt.

                Die Frage ist nun: ist das File selbst auch tatsächlich ein HTML-File mit entsprechender Zeichencodierung?

                1. Ich kenne deine Dokumente nicht, also kann ich dir nicht sagen was richtig oder falsch ist - jedenfalls ist das jetzt ein sinnvoller Content-Type, der sich mit deiner Beschreibung deckt.

                  Die Frage ist nun: ist das File selbst auch tatsächlich ein HTML-File mit entsprechender Zeichencodierung?

                  Hier ein Beispiel, sofort abarbeitbar:

                    
                  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"  
                    "http://www.w3.org/TR/html4/loose.dtd">  
                  <html>  
                    <head>  
                      <title>Test</title>  
                      <meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1" />  
                    <script src="http://code.jquery.com/jquery-latest.min.js"></script>  
                    </script>  
                    <script type="text/javascript">  
                      var objt;  
                      //für textarea, zeitverzögerte Abarbeitung damit 'responseText' da ist  
                      function ttt() {  
                        var zw=objt.responseText;  
                        $("#code").val(zw);  
                        $("#code").attr({'rows':'12','cols':'80'});  
                      }  
                      $(document).ready(function(){  
                        $('a').click(function() {  
                          $("#code").val("waiting ...");  
                          objt = jQuery.ajax($(this).attr('href'),{'contentType':'text/html; charset=ISO-8859-1'});  
                          setTimeout("ttt()",1000);  
                        });  
                      });   //Ende 'ready'-Funktion  
                    </script>  
                  </head>  
                    <body style="background-color:#ffc099;">  
                    <div><a href="datei.html" target="content">Dateiverweis</a></div>  
                    <textarea id="code" ></textarea>  
                      <h4>Code-Demo:</h4>  
                      <iframe name="content" width="80%"  
                       style="border:thin solid red;background-color:silver;">  
                      </iframe>  
                  </body>  
                  </html>  
                  
                  

                  und die zu ladende Datei "datei.html":

                    
                  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"  
                    "http://www.w3.org/TR/html4/loose.dtd">  
                  <html>  
                  <head>  
                  <meta http-equiv="contentType" content="text/html; charset=iso-8859-1" />  
                  <title>Focus</title>  
                  </head>  
                  <body>  
                  <h3>beliebiger Text: äö ü</h3>  
                  </body>  
                  </html>  
                  
                  

                  Gruß Wicki

                  1. Was soll das setTimeout? was hast du gegen success bzw. complete - die ajax-Methode macht das doch schon - was ist wenn du erst nach 1,2 Sekunden eine antwort erhältst? Was ist, wenn du eine Fehlermeldung bekommst?

                    Der Content-Type auf der Client-Seite war leider ein Roter Hering - in deinem Fall ist das egal, kümmere dich um die Serverseite und sorge dort, dass die Zeichencodierung passt.

                    Doppelposting? ... machen wir doch bitte dort weiter.

                    1. Was soll das setTimeout? was hast du gegen success bzw. complete - die ajax-Methode macht das doch schon - was ist wenn du erst nach 1,2 Sekunden eine antwort erhältst? Was ist, wenn du eine Fehlermeldung bekommst?

                      Der Content-Type auf der Client-Seite war leider ein Roter Hering - in deinem Fall ist das egal, kümmere dich um die Serverseite und sorge dort, dass die Zeichencodierung passt.

                      Doppelposting? ... machen wir doch bitte dort weiter.

                      Du hast ja in vielem Recht, doch hier geht es nicht um Optimum und Eleganz, der Code funktioniert bei mir als Beispiel.
                      Im übrigen sprich doch bitte die Sprache die ich verstehe (Roter Hering ?).
                      Ich weiß nicht was Du mit Serverseite meinst, der Beispielcode "datei.html" kommt vom Server und hat die passende Codierung.

                      Wicki

                      1. Du hast ja in vielem Recht, doch hier geht es nicht um Optimum und Eleganz, der Code funktioniert bei mir als Beispiel.

                        Er funktioniert nur zufällig, weil du prinzipiell davon ausgehst, dass der response schon irgendwie innerhalb einer Sekunde ankommt - wenn er aber früher kommt, wartet man unnütz und wenn er später kommt, scheitert das Script.

                        jQuery stellt eine saubere Lösung bereit - es gibt keinen vernünftigen Grund für deine selbstgestrickte Lösung, die offensichtlich nicht funktioniert™.

                        Im übrigen sprich doch bitte die Sprache die ich verstehe (Roter Hering ?).

                        Ich dachte, das wäre eine gebräuchliche Redewendung.

                        Ich weiß nicht was Du mit Serverseite meinst, der Beispielcode "datei.html" kommt vom Server und hat die passende Codierung.

                        Was steht im HTTP-Header, wenn du die Datei direkt aufrufst?

                        1. Hier nochmal der wie ich hoffe korrekte Javascript-Teil des Beispiels:

                            
                            <script src="http://code.jquery.com/jquery-latest.min.js"></script>  
                            </script>  
                            <script type="text/javascript">  
                              $(document).ready(function(){  
                                $('a').click(function() {  
                                  $("#code").val("waiting ...");  
                                  jQuery.ajax({  
                                    url:$(this).attr('href'),  
                                    contentType:'text/html; charset=ISO-8859-1',  
                                    success: function(data) {  
                                      $("#code").val(data);  
                                      $("#code").attr({'rows':'12','cols':'80'});  
                                    }  
                                  });  
                                });  
                              });   //Ende 'ready'-Funktion  
                            </script>  
                          
                          

                          Beim GET-Aufruf für die "datei.html" steht 'text/html; charset=ISO-8859-1' im Anfrage-Header.

                          Wicki

                          1. $("#code").val("waiting ...");

                            Das geht auch schöner - "beforeSend" bzw. .ajaxStart() und .ajaxStop() sind hier die Mittel der Wahl - damit stellst du sicher, dass die "loading"-Sache nur dann angezeigt wird, wenn das auch tatsächlich passiert.

                            contentType:'text/html; charset=ISO-8859-1',

                            Die Zeilen kannst du dir, wie schon erwähnt einnähen - mein Fehler.

                            $("#code").val(data);
                                        $("#code").attr({'rows':'12','cols':'80'});

                            Auch das kannst du eleganter schreiben:
                            $("#code")
                              .val(data)
                              .attr({'rows':'12','cols':'80'});

                            });   //Ende 'ready'-Funktion

                            Wenn du einen ordentlichen Editor mit Code-Folding verwendest, kannst du dir solche Kommentare auch sparen :)

                            Beim GET-Aufruf für die "datei.html" steht 'text/html; charset=ISO-8859-1' im Anfrage-Header.

                            Entscheidend ist, was im Response-Header steht :)

                            1. Das geht auch schöner - "beforeSend" bzw. .ajaxStart() und .ajaxStop() sind hier die Mittel der Wahl - damit stellst du sicher, dass die "loading"-Sache nur dann angezeigt wird, wenn das auch tatsächlich passiert.

                              contentType:'text/html; charset=ISO-8859-1',
                              Die Zeilen kannst du dir, wie schon erwähnt einnähen - mein Fehler.

                              Auch das kannst du eleganter schreiben:
                              $("#code")
                                .val(data)
                                .attr({'rows':'12','cols':'80'});

                              Wenn du einen ordentlichen Editor mit Code-Folding verwendest, kannst du dir solche Kommentare auch sparen :)

                              Dank für die Hinweise, doch das sind alles Schönheitsreparaturen.

                              Beim GET-Aufruf für die "datei.html" steht 'text/html; charset=ISO-8859-1' im Anfrage-Header.

                              Entscheidend ist, was im Response-Header steht :)

                              Dort steht "Content-Type text/html".
                              Wie soll ich das beeinflussen ?

                              In der Sache sind wir noch nicht weitergekommen.
                              Ich gehe jetzt mal 1 Runde joggen, kann mich also in ca. 1 Stunde wieder melden.

                              Wicki

                              1. Dank für die Hinweise, doch das sind alles Schönheitsreparaturen.

                                Deshalb sind sie noch lange nicht wertlos :)

                                Entscheidend ist, was im Response-Header steht :)

                                Dort steht "Content-Type text/html".
                                Wie soll ich das beeinflussen ?

                                Über die Webserver-Konfiguration - wenn keiner angegeben ist, werden die meisten Browser einfach mal Pauschal UTF-8 als Kodierung annehmen, dann wäre es klar, warum die Zeichen zerstört sind.

                                In der Sache sind wir noch nicht weitergekommen.

                                Dein Informationsfluss ist auch äußerst spärlich - wenn du von vorne herein kein Doppelposting erstellt hättest, wären wir vermutlich schon durch, weil wir uns 10x hin und her sparen hätten können :)

                                1. Ich habe den Eindruck, dass Du mein Beispiel, das nun wirklich kurz und knapp ist und das in seiner letzten Fassung ohne Änderung zum Laufen gebracht werden kann (falls Du lokal einen eigenen Webserver hast wäre das ein Klacks), überhaupt nicht abgearbeitet hast. Dort könntest Du z. B. sehen, dass die Übertragung zum iframe wie gewünscht läuft (also mit Umlauten), jedoch die zur textarea eben nicht. Da könntest Du auch mit Firefox und Firebug die Header beobachten.
                                  Was Du mit "Doppelposting" meinst ist mir auch unklar.

                                  Gruß Wicki

                                  1. Hallo,

                                    Ich habe den Eindruck, dass Du mein Beispiel, das nun wirklich kurz und knapp ist und das in seiner letzten Fassung ohne Änderung zum Laufen gebracht werden kann (falls Du lokal einen eigenen Webserver hast wäre das ein Klacks), überhaupt nicht abgearbeitet hast.

                                    und ich habe den Eindruck, dass dir das Kernproblem, nämlich die Unstimmigkeiten in der Zeichencodierung, immer noch nicht klar ist.

                                    Dort könntest Du z. B. sehen, dass die Übertragung zum iframe wie gewünscht läuft (also mit Umlauten), jedoch die zur textarea eben nicht. Da könntest Du auch mit Firefox und Firebug die Header beobachten.

                                    Nein. Wenn ich deine abgedruckten Quelltexte auf meinen Testserver aufspiele, liegen sie in der Codierung vor, die ich in diesem Fall verwende. Aus dem Posting geht sie ja nicht hervor. Und die Einstellungen meines Servers weichen möglicherweise auch von deinen ab.

                                    Deswegen "betteln" wir doch immer wieder um ein lauffähiges Online-Beispiel, an dem man alle diese Details so untersuchen kann, wie sie bei dir vorliegen.

                                    Was Du mit "Doppelposting" meinst ist mir auch unklar.

                                    https://forum.selfhtml.org/?t=209399&m=1425120

                                    Ciao,
                                     Martin

                                    --
                                    Die letzten Worte des Systemadministrators:
                                    Nur gut, dass ich ein intaktes Backup habe.
                                    Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
                                    1. und ich habe den Eindruck, dass dir das Kernproblem, nämlich die Unstimmigkeiten in der Zeichencodierung, immer noch nicht klar ist.

                                      hat mir auch bisher keiner so richtig erklärt

                                      Nein. Wenn ich deine abgedruckten Quelltexte auf meinen Testserver aufspiele, liegen sie in der Codierung vor, die ich in diesem Fall verwende. Aus dem Posting geht sie ja nicht hervor. Und die Einstellungen meines Servers weichen möglicherweise auch von deinen ab.

                                      lass die abgedruckten Quelltexte doch einfach mal auf Deinem Server laufen,
                                      es wäre interessant das Ergebnis zu kennen

                                      Deswegen "betteln" wir doch immer wieder um ein lauffähiges Online-Beispiel, an dem man alle diese Details so untersuchen kann, wie sie bei dir vorliegen.

                                      hier nun der Verweis zum Online-Beispiel:
                                      http://www.stephanw.net/wicki/t1.html

                                      Gruß Wicki

                                      1. Hallo,

                                        lass die abgedruckten Quelltexte doch einfach mal auf Deinem Server laufen,
                                        es wäre interessant das Ergebnis zu kennen

                                        das Ergebnis wäre, dass das Beispiel korrekt läuft. Warum? Weil bei mir UTF-8 als Default eingestellt ist.

                                        hier nun der Verweis zum Online-Beispiel:
                                        http://www.stephanw.net/wicki/t1.html

                                        Danke, jetzt kommen wir weiter.

                                        Also: Dein Server gibt keine Zeichencodierung an. Beim Laden eines HTML-Dokuments wird der Browser also ersatzweise die Information im entsprechenden meta-Element nehmen. Die angegebene Codierung ist ISO-8859-1, und das passt mit der tatsächlichen Codierung zusammen. Leider enthält das Dokument keine Zeichen jenseits von ASCII, so dass die Unterscheidung hier zunächst nicht relevant ist.

                                        Dann forderst du t1datei.html per AJAX an. Die AJAX-Schnittstelle geht grundsätzlich davon aus, dass die ankommenden Daten in UTF-8 codiert sind. Sind sie aber nicht - auch hier verwendest du ISO-8859-1, gibst das auch im meta-Element an. Nur dass die Daten hier nicht als HTML interpretiert werden, daher interessiert sich auch niemand für die meta-Angabe. Ergebnis: Der Browser versucht krampfhaft, die ISO-codierten Zeichen als UTF-8 zu interpretieren, und stellt fest, dass es sich um ungültige Codes handelt. Also stellt er das Ersatzzeichen dar (üblicherweise ein Fragezeichen).

                                        Das Problem würde sich vermutlich ziemlich schnell in Luft auflösen, wenn du konsequent UTF-8 verwendest. Möglich, dass man sogar beim AJAX-Aufruf eine abweichende Codierung angeben kann - damit kenne ich mich aber nicht so gut aus, dass ich dir nun sagen könnte, wie's geht.

                                        So long,
                                         Martin

                                        --
                                        Die letzten Worte des Polizisten:
                                        Ich hab mitgezählt, Leute: Sechs Schuss, jetzt hat er keine Munition mehr!
                                        Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
                                        1. Das Problem würde sich vermutlich ziemlich schnell in Luft auflösen, wenn du konsequent UTF-8 verwendest.

                                          Oder wenn im HTTP-Header explizit die Codierung übermittelt wird - aktuell wird dies eben vom Webserver nicht gemacht - und daran scheiterts ziemlich sicher.

                                          Möglich, dass man sogar beim AJAX-Aufruf eine abweichende Codierung angeben kann

                                          Ja, aber nur wenn tatsächlich Daten gesendet werden - wenn diese Information vom Server aber nicht interpretiert wird (was im aktuellen Fall so ist, weil no matter what ein statisches Dokument ausgeliefert wird) bringt das nichts. Das war auch der Grund, warum ich Wicki eingangs unabsichtlich auf eine falsche Fährte gelockt habe. Hätte ich zu diesem Zeitpunkt bereits gewusst, dass dies hier ein Doppelposting zur "Zeig' mir im Frame und im der Textarea den Quelltext eines Files an"-Sache ist, hätten wir uns das erspart.

                                          damit kenne ich mich aber nicht so gut aus, dass ich dir nun sagen könnte, wie's geht.

                                          1. Hallo,

                                            Möglich, dass man sogar beim AJAX-Aufruf eine abweichende Codierung angeben kann
                                            Ja, aber nur wenn tatsächlich Daten gesendet werden

                                            ähm, ich dachte eher daran, der send-Methode anzugeben, in welcher Codierung ich die Antwort *erwarte*. Aber wie gesagt, ich habe AJAX noch nie wirklich genutzt ...

                                            Ciao,
                                             Martin

                                            --
                                            Alleine sind wir stark ...
                                            gemeinsam sind wir unausstehlich!
                                            Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
                                        2. Also: Dein Server gibt keine Zeichencodierung an.

                                          nur interessehalber, ich habe einen lokalen Apache 1.3.28-Server, wo (httpd.conf ?) und wie wäre da eine Zeichencodierung anzugeben ?

                                          Dann forderst du t1datei.html per AJAX an. Die AJAX-Schnittstelle geht grundsätzlich davon aus, dass die ankommenden Daten in UTF-8 codiert sind.

                                          das hatte ich auch vermutet

                                          Das Problem würde sich vermutlich ziemlich schnell in Luft auflösen, wenn du konsequent UTF-8 verwendest.

                                          Möglich, dass man sogar beim AJAX-Aufruf eine abweichende Codierung angeben kann - damit kenne ich mich aber nicht so gut aus, dass ich dir nun sagen könnte, wie's geht.

                                          Umstellung auf UTF-8 hat sich als richtig erwiesen !
                                          Was den Ajax-Aufruf angeht, so habe ich da keine Möglichkeit gefunden.

                                          Besten Dank und Gruß

                                          Wicki

                                          1. nur interessehalber, ich habe einen lokalen Apache 1.3.28-Server, wo (httpd.conf ?) und wie wäre da eine Zeichencodierung anzugeben ?

                                            Unter Apache 2 aufwärts ist das AddDefaultCharset - obs das unter 1.3 auch gibt, kann ich nicht sagen - finde ich grade in der Doku nicht.

                                            Umstellung auf UTF-8 hat sich als richtig erwiesen !

                                            UTF-8 immer und überall zu verwenden ist ziemlich sicher die richtige Wahl :)

                                            Was den Ajax-Aufruf angeht, so habe ich da keine Möglichkeit gefunden.

                                            Der wertet den HTTP-Header aus und wenn da nix steht (was ja der fall ist) wird pauschal UTF-8 angenommmen.

                                            1. @@suit:

                                              nuqneH

                                              Unter Apache 2 aufwärts ist das AddDefaultCharset - obs das unter 1.3 auch gibt, kann ich nicht sagen - finde ich grade in der Doku nicht.

                                              Laut [article-o-http-charset] ab 1.3.12.

                                              Qapla'

                                              --
                                              Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
                                              (Mark Twain)
                                      2. @@Wicki:

                                        nuqneH

                                        und ich habe den Eindruck, dass dir das Kernproblem, nämlich die Unstimmigkeiten in der Zeichencodierung, immer noch nicht klar ist.

                                        hat mir auch bisher keiner so richtig erklärt

                                        Lesetip: Zeichencodierung für Anfänger und dortige Links.

                                        Qapla'

                                        --
                                        Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
                                        (Mark Twain)
                        2. Hallo,

                          Im übrigen sprich doch bitte die Sprache die ich verstehe (Roter Hering ?).
                          Ich dachte, das wäre eine gebräuchliche Redewendung.

                          also mir war sie bis eben weder im Deutschen, noch im Englischen bekannt. Ich war beim Lesen auch ziemlich irritiert, was du damit wohl meinen könntest.

                          Ciao,
                           Martin

                          --
                          Die letzten Worte des Helden:
                          Feigling! Traust dich ja doch nicht!
                          Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
                          1. Om nah hoo pez nyeetz, Der Martin!

                            also mir war sie bis eben weder im Deutschen, noch im Englischen bekannt. Ich war beim Lesen auch ziemlich irritiert, was du damit wohl meinen könntest.

                            +1

                            Matthias

                            --
                            1/z ist kein Blatt Papier.

                            1. also mir war sie bis eben weder im Deutschen, noch im Englischen bekannt. Ich war beim Lesen auch ziemlich irritiert, was du damit wohl meinen könntest.

                              +1

                              "Hinter dir, ein dreiköpfiger Affe!" anyone?

                            2. Hallo,

                              also mir war sie bis eben weder im Deutschen, noch im Englischen bekannt. Ich war beim Lesen auch ziemlich irritiert, was du damit wohl meinen könntest.

                              +1

                              woraus ich schließe, dass Euch klassische britische Kriminalromane nicht vertraut seid: eines meiner Lieblingsbücher :-(

                              Freundliche Grüße

                              Vinzenz

    2. Hi,

      Einfach einen entsprechenden Content-Type im Settings-Argument mittels "contentType" angeben und die Sache sollte erledigt sein.

      Ich sehe in der Doku nur, dass man diesen Parameter beim *senden* von Daten an den Server setzen sollte.
      Wenn man den Server dazu bringen wollte, Daten in einer bestimmten Kodierung *zurück* zu liefern, sollte man wohl eher Accept-Charset mitgeben. Hülfe aber auch nur dann, wenn der Server das auch berücksichtigen würde.

      Darüber hinaus sehe ich aber auch nicht, warum das überhaupt nötig sein sollte.
      Wenn der Browser das Dokument liest und dabei die korrekte Zeichenkodierung mitgeteilt bekommt - dann sollte es spätestens ab dem Zeitpunkt, wo er daraus ein DOM aufbaut egal sein, in welcher Kodierung die Daten ursprünglich mal geliefert wurden.

      Ich vermute, dass entweder die Kodierung nicht korrekt mitgeteilt wird; oder aber, dass beim Zugriff auf .responseText die interne Umwandlung in Unicode noch nicht stattgefunden hat, sondern die tatsächlich vom Server gesendeten Bytes geliefert werden(?).

      MfG ChrisB

      --
      RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
      1. Ich sehe in der Doku nur, dass man diesen Parameter beim *senden* von Daten an den Server setzen sollte.

        Ja - das ist natürlich Schmarrn.

  2. hi,

    ich lese nach Klick auf einen a-Verweis eine externe HTML-Datei (ISO-8859-1) ein und zeige sie in einer "textarea" an (Realisierung mit jQuery). Dabei werden die Umlaute als Fragezeichen dargestellt.
    Wie kann ich das vermeiden ohne die Datei umzuformen ?

    Indem Du die HTML-Seite mit der Textarea in der gleichen Zeichenkodierung ausgibtst.

    Hotti

    1. @@hotti:

      nuqneH

      Indem Du die HTML-Seite mit der Textarea in der gleichen Zeichenkodierung ausgibtst.

      Du meinst, die Seite auf ISO 8859-1 umstellen? Zurück in die Höhle?

      Qapla'

      --
      Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
      (Mark Twain)
      1. hi Gunnar,

        Indem Du die HTML-Seite mit der Textarea in der gleichen Zeichenkodierung ausgibtst.

        Du meinst, die Seite auf ISO 8859-1 umstellen? Zurück in die Höhle?

        Du stellst gute Fragen aber an der falschen Stelle, richte Deine Frage bitte an den OP.

        Hotti