2016-04-08 2 views
0

Meine Webseite hat einige chinesische Schriftzeichen. Wenn die Textkodierung des Browsers "Unicode" ist, ist alles in Ordnung. Aber wenn ich es zu "Western" ändere, werden die chinesischen Schriftzeichen chaotisch.Wie wird der HTML-Zeichensatz gegenüber der Browsertextcodierung bevorzugt?

Ich möchte, dass die Seite unabhängig von der Browsercodierung in UTF-8 angezeigt wird. Wie es geht?

Der für die JSP empfangene Antwortkopf hat Content-Type: "text/html; Zeichensatz = UTF-8". Wenn ich die Antwort in der Registerkarte Netzwerk überprüfe, ist es richtig (in UTF-8). JSP hat auch

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 

Selbst mit all diesen charset erwähnt, wird der Browser-Textcodierung bevorzugt nehmen. Kann dies außer Kraft gesetzt werden? Kann die Seite unabhängig von der Browsercodierung immer in "UTF-8" sein?

Hinweis: Der Browser, den ich überprüft habe, ist Firefox.

Textfelder sind bereits mit chinesischen Zeichen vom Server ausgefüllt.

Dies ist, wenn die Browser-Textcodierung "Unicode" ist.

enter image description here

document.charset ist "UTF-8"


Dies ist, wenn der Browser-Textcodierung "westlichen" ist.

enter image description here

document.charset ist "windows-1252"

enter image description here

Bitte helfen.

+0

Welche normaler Benutzer auf Ihre Website geht, sieht korrekten Text, wählt explizit eine andere Kodierung und erwartet dann alles andere als Mojibake? Das ist wirklich kein Problem, über das man sich Sorgen machen muss. Diese Einstellung der Regel setzt auch bei jeder neuen Seite/Domain, es ist nicht etwas, das als Standard-Sticks um. – deceze

Antwort

2

Ich möchte, dass die Seite unabhängig von der Browsercodierung in UTF-8 angezeigt wird. Wie es geht?

Sie können nicht. *

manuell eine Codierung in der Browser-Codierung Menü auswählen ist sollte alles außer Kraft zu setzen, dass die Website zu sagen über das, was die Codierung sein sollte.

Sie können dies weder verhindern, noch sollten Sie.

Wer den Browser zwingt eine Codierung zu verwenden, die die Website nicht wirkt auf ihre eigene Verantwortung nicht unterstützt.

* gut, abgesehen von den gesamten Text in Bildern. Oder in einem Flash-Film. :)

+0

Dies sendet tatsächlich Mülldaten an DB. Kann ich diese Zeichen auf "UTF-8" ändern?in Javascript oder Java? – Bhuvana

+1

Es ist sicherlich möglich, auf der Serverseite. Es ist wahrscheinlich ein großer Aufwand, vor allem, wenn Sie auf eine mögliche Codierung achten müssen. Persönlich würde ich nur die Übermittlung des Formulars blockieren, wenn "document.encoding" nicht "UTF-8" ist. Dies ist nicht alltäglich bei Ihren Benutzern, oder? –