Druckversion des Themas

Hier klicken um das Topic im Orginalformat anzusehen

HTML-Editor phase 5 Support _ HTML _ Html Entity Per Document.write

Geschrieben von: waltari 02.09.2004 - 11:09

Hallo,

ich will einen Text per document.write erzeugen, in dem ein Umlaut steht.

Also so document.write('<p>T&uuml;</p>');

Nur denkt der Browser nun, dass das Script bei dem Semikolon vom Entity zu Ende ist und bringt eine Fehlermeldung. Wenn man statt dem Entity einfach ein ü schreibt, funktioniert's. Gibt es eine Möglichkeit das Entity in JavaScript zu schreiben? Sind Entities bei document.write überhaupt notwendig? Oder werden Umlaute durch document.write auch dann korrekt angezeigt, wenn man nicht den westeuropäischen Zeichensatz benutzt.

Gruß, Timo

Geschrieben von: Conny 02.09.2004 - 13:06

Hi,
warum schreibst Du nicht ue ?

cu
Conny

Geschrieben von: waltari 02.09.2004 - 13:55

ZITAT(Conny @ 02.09.2004 - 23:06)
Hi,
warum schreibst Du nicht ue ?

cu
Conny

Hi Conny,

ich würde ue schreiben. Nur der, für den ich die Seite erstelle bevorzugt eben ü. Am allerbesten wäre natürlich, wenn er die Pop-Ups ganz abschaffen würde, aber in die hat er sich ein wenig verliebt und hält es für das nonplusultra.

Gruß, Timo

Geschrieben von: heinzelhund 02.09.2004 - 14:42

Hallo,

dein Script-Schnipsel funktioniert bei mir ganz normal und dass sollte er auch. In der JS-Anweisung document.write (""); interssiert den JS-Interpreter lediglich ein weiteres Anführungszeichen zwischen den umschließenden Anführungszeichen, den Rest interpretiert er als String. Anführungszeichen musst du mit einem Backslash maskieren oder du kannst einfach zwischen einfachen und doppelten Anführungszeichen wechseln. Alles andere ist für den Browser pures HTML.

Ciao
Heinzelhund

Geschrieben von: Auge 02.09.2004 - 16:49

Hallo

@ Heinzelhund: waltari benutzt aber nicht die doppelten, sondern die einfachen
Anführungszeichen. Zumindest bei PHP werden dann bestimmte Zeichen anders
interpretiert. Vielleicht ist das bei JavaScript ebenso?! (nur 'ne Vermutung)

Also: Entweder doppelte Anführungszeichen benutzen, oder es mit einer Maskierung
versuchen (document.write('<p>T&uuml\;</p>');).

Tschö, Auge

Geschrieben von: heinzelhund 02.09.2004 - 17:14

Hallo,

@Auge
PHP interpretiert in einfachen Anführungsstrichen keine Variablen à la $name. Ist bei JS egal. In JS müssen die Variablen zwingend außerhalb der Anführungsstriche stehen und mit einem '+' angebunden werden. Ist'n bischen mehr Geschreibe als in PHP, hat aber den Vorteil, dass man durch geschicktes Abwechseln der Anführungsarten sich einige Maskiererei sparren kann.
Der Backslash müsste einfach als ein solcher ausgegeben werden.

@Timo
falls du JS über eine serverseitige Scriptsprache ausgeben lässt, kommt man schon mal gerne mit den Maskierungen durcheinander. (nur 'ne Vermutung).

Ciao
Heinzelhund

Geschrieben von: Netizen 06.09.2004 - 18:10

ZITAT(waltari @ 02.09.2004 - 12:09)
ich will einen Text per document.write erzeugen, in dem ein Umlaut steht.

Also so document.write('<p>T&uuml;</p>');

Nur denkt der Browser nun, dass das Script bei dem Semikolon vom Entity zu Ende ist und bringt eine Fehlermeldung.

Welcher Browser ist so kaputt? Bei mir funktioniert obiges in aktuellen Opera, Firefox und IE5, selbst NN4 meckert nicht.

ZITAT
Wenn man statt dem Entity einfach ein ü schreibt, funktioniert's.
Dann bleib doch einfach dabei. Was spricht dagegen?

ZITAT
Gibt es eine Möglichkeit das Entity in JavaScript zu schreiben? Sind Entities bei document.write überhaupt notwendig?

Bei Angabe eines entsprechenden Zeichensatzes sind überhaupt keine Entities notwendig (abgesehen von einigen wenigen Ausnahmen wie &amp; z.B.).

ZITAT
Oder werden Umlaute durch document.write auch dann korrekt angezeigt, wenn man nicht den westeuropäischen Zeichensatz benutzt.

Was für einen Zeichensatz verwendest Du denn?

Gruß
n!

Unterstützt von Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)