Olaf Schneider: Umlaut nicht zurueckcodiert bei externem Javascript

Hallo,

Ich habe festgestellt, dass unter dem IE5.1 Umlaute, die mittels der Alert-Methode ausgegeben werden, nur richtig angezeigt werden, wenn die Alert-Methode aus dem HTML-Dokument aufgerufen wird. Wird sie aus einer externen Javascript-Datei aufgerufen, zeigt die Alert-Box den Code mit &...; an.
Weiss jemand, wo mein (Denk-)fehler liegt?

Vielen Dank im voraus,
Olaf, Essen

-----Datei test.html:----------

<html><head>
<script language="JavaScript" src="test.js" type="text/javascript"></script>
</head>

<body>

<a href="#" onclick="alert('Rätsel');return false;">Alert intern</a><br>
<a href="#" onclick="extern();return false;">Alert extern</a>

</body>
</html>

-----Datei test.js:------------

function extern()
{
 alert("Rätsel");
}

  1. Hi,

    Ich habe festgestellt, dass unter dem IE5.1 Umlaute, die mittels der Alert-Methode ausgegeben werden, nur richtig angezeigt werden, wenn

    ...die Entität im HTML-Code steht und somit umgehend umgewandelt wird. Ja, richtig. So und nicht anders darf und muss es sein.

    Wird sie aus einer externen Javascript-Datei aufgerufen, zeigt die Alert-Box

    ...exakt das an, was sie an Daten bekommt. Um das selbe Ergebnis zu erzeugen, müsstest Du im HTML-Code onClick="alert('R&auml;tsel');" sagen, was beim JavaScript-Interpreter als "alert('Rätsel');" ankommt.

    Cheatah

    1. moin

      Ich habe festgestellt, dass unter dem IE5.1 Umlaute, die mittels der Alert-Methode ausgegeben werden, nur richtig angezeigt werden, wenn

      ...die Entität im HTML-Code steht und somit umgehend umgewandelt wird. Ja, richtig. So und nicht anders darf und muss es sein.

      Jups !
      Ändern lässt sich das nur indem du den Text aus dem externen Javascript schon vor der "umwandlung" übergibst. Mit document.write() und onload() z.B.

      Da das bei der Alert Box erst nach schon geschehener "Umwandlung" geschieht, funzt das so nicht.

      cu

      1. dann weiss ich schon mal weiter,
        vielen Dank nochmal.

        Olaf