HighDots Forums  

javascript, window.open, mailto und kyrillische Texte

Javascript (German) Programmiersprache JavaScript. (de.comp.lang.javascript)


Discuss javascript, window.open, mailto und kyrillische Texte in the Javascript (German) forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
John
 
Posts: n/a

Default javascript, window.open, mailto und kyrillische Texte - 10-29-2009 , 05:31 AM






Hallo zusammen,

mich beschäftigt zur Zeit folgendes Problem: Ich möchte per Javascript
einen Mailto Link ausführen, der mir dann das Client Email Programm
öffnet.

Ich mache dies wie folgt (Javascript):

function xyz() {
var subj = escape("...");
var body = escape("....");
window.open('mailto:recipient (AT) xyz (DOT) test?subject='+subj+'&body);
}

Wenn diese Funktion aufgerufen wird, öffnet sich der lokale
Emailclient und eigentlich wäre nun alles gut.

Es funktioniert in allen (von mir benötigten) Sprachen (getestet ist
für Deutsch, Englisch, Kroatisch, Tschechisch, Spanisch, Slowakisch)
außer in Kyrillisch.

In Kyrillisch erscheinen Subject und Body im Email Client wie folgt.

%u0430%u0442%u0438%u0441%u043D%u0456%u0442%u044C %u043D
%u0430%u0441%u0442%u0443%u043F%u043D%u0435 %u043F%u043E
%u0441%u0438%u043B%u0430

Schaue ich mir den HTML Sourcecode an, steht im escape Teil des
subjects/bodys aber correct der kyrillische Text.

Ich stehe vor einem Rätsel und hoffe, jemand weiß hier Rat.

Danke und Gruß
John

Reply With Quote
  #2  
Old   
Chris Seidel
 
Posts: n/a

Default Re: javascript, window.open, mailto und kyrillische Texte - 10-29-2009 , 06:17 AM






On Thu, 29 Oct 2009 10:31:00 +0100, John <bobafoo (AT) googlemail (DOT) com> wrote:

Quote:
In Kyrillisch erscheinen Subject und Body im Email Client wie folgt.

%u0430%u0442%u0438%u0441%u043D%u0456%u0442%u044C %u043D
%u0430%u0441%u0442%u0443%u043F%u043D%u0435 %u043F%u043E
%u0441%u0438%u043B%u0430

Schaue ich mir den HTML Sourcecode an, steht im escape Teil des
subjects/bodys aber correct der kyrillische Text.
Ich sag mal, der EMail-Client kann das dann nicht?

Reply With Quote
  #3  
Old   
Holger Jeromin
 
Posts: n/a

Default Re: javascript, window.open, mailto und kyrillische Texte - 10-29-2009 , 07:43 AM



John schrieb am 29.10.2009 10:31:

Quote:
mich beschäftigt zur Zeit folgendes Problem: Ich möchte per Javascript
einen Mailto Link ausführen, der mir dann das Client Email Programm
öffnet.
Auch nicht immer und überall...
Man denke an die vielen Leute die nur Webmail nutzen.

Quote:
Ich mache dies wie folgt (Javascript):

function xyz() {
var subj = escape("...");
var body = escape("....");
window.open('mailto:recipient (AT) xyz (DOT) test?subject='+subj+'&body);
}

Wenn diese Funktion aufgerufen wird, öffnet sich der lokale
Emailclient und eigentlich wäre nun alles gut.

Es funktioniert in allen (von mir benötigten) Sprachen (getestet ist
für Deutsch, Englisch, Kroatisch, Tschechisch, Spanisch, Slowakisch)
außer in Kyrillisch.

In Kyrillisch erscheinen Subject und Body im Email Client wie folgt.

%u0430%u0442%u0438%u0441%u043D%u0456%u0442%u044C %u043D
%u0430%u0441%u0442%u0443%u043F%u043D%u0435 %u043F%u043E
%u0441%u0438%u043B%u0430

Schaue ich mir den HTML Sourcecode an, steht im escape Teil des
subjects/bodys aber correct der kyrillische Text.

Ich stehe vor einem Rätsel und hoffe, jemand weiß hier Rat.
escape basiert auf latin1, wo es keine Entsprechung für kyrillisch
Zeichen gibt. Also bleibt dem EcmaScript interpreter nichts anderes
übrig, als sie anders zu speichern. Daher kommst du zu den %u0430
Unicodezeichen, welche der E-Mail client (welcher eigentlich?) nicht
unterstützt.

--
Mit freundlichen Grüßen
Holger Jeromin

Reply With Quote
  #4  
Old   
Thomas 'PointedEars' Lahn
 
Posts: n/a

Default Re: javascript, window.open, mailto und kyrillische Texte - 10-29-2009 , 08:51 AM



Holger Jeromin wrote:

Quote:
escape basiert auf latin1, wo es keine Entsprechung für kyrillisch
Zeichen gibt.
Das ist falchs. Das proprietäre escape() basiert zunächst einmal lediglich
auf 8-Bit-Zeichencodierungen und damit implementierbaren Zeichensätzen;
davon ist ISO-8859-1 (Latin-1) einer. Aber auch für Kyrillisch gibt es
natürlich (mindenstens) eine(n), darunter KOI8-R und ISO-8859-5, denn auch
z.B. Russen möchten für ihre normale Schriftsprache keine Unicode-Tastatur
benutzen müssen.

<http://de.wikipedia.org/wiki/Kyrillisches_Alphabet#Zeichenkodierung>

Quote:
Also bleibt dem EcmaScript interpreter nichts anderes
übrig, als sie anders zu speichern.
Das ist ebenfalls fhcsal. Es gibt keinen "EcmaScript interpreter" (egal wie
man das schreibt. Konkret werden wird syntaktisch korreter Quelltext von
ECMAScript-Implementationen wie JavaScript und JScript zu Bytecode
*compiliert* und *dieser Bytecode* dann von einer Virtuellen Maschine
interpretiert. Ausserdem werden die Zeichen nicht von der Script-Engine
(die das zuvor beschriebene macht) konvertiert; sie liegen hier bereits per
Script-Ressource (hier: HTML-Dokument) oder DOM API so vor.

Quote:
Daher kommst du zu den %u0430 Unicodezeichen, welche der E-Mail client
(welcher eigentlich?) nicht unterstützt.
Und nochmal mit beiden Händen voll ins Klo gegriffen. Der E-Mail-Client
unterstützt "Unicodezeichen" sehr wahrscheinlich; sie müssen nur im URI
richtig codiert werden, nämlich äquivalent `%04%30', so wie es
encodeURIComponent() macht und in RFC3986 definiert ist. `%u0430' ist
hingegen kein "Unicodezeichen" (egal wie man es schreibt).

Bitte geh Dich informieren, bevor Du hier weiteren Unfug verbreitest.


PointedEars

Reply With Quote
  #5  
Old   
Thomas 'PointedEars' Lahn
 
Posts: n/a

Default Re: javascript, window.open, mailto und kyrillische Texte - 10-29-2009 , 08:54 AM



Chris Seidel wrote:

Quote:
On Thu, 29 Oct 2009 10:31:00 +0100, John <bobafoo (AT) googlemail (DOT) com> wrote:
In Kyrillisch erscheinen Subject und Body im Email Client wie folgt.

%u0430%u0442%u0438%u0441%u043D%u0456%u0442%u044C %u043D
%u0430%u0441%u0442%u0443%u043F%u043D%u0435 %u043F%u043E
%u0441%u0438%u043B%u0430

Schaue ich mir den HTML Sourcecode an, steht im escape Teil des
subjects/bodys aber correct der kyrillische Text.

Ich sag mal, der EMail-Client kann das dann nicht?
Wahrscheinlich kann er es. Die Frage wurde dem multipostenden
OP auch in comp.lang.javascript bereits ausführlich beantwortet.


PointedEars

Reply With Quote
  #6  
Old   
Thomas 'PointedEars' Lahn
 
Posts: n/a

Default Re: javascript, window.open, mailto und kyrillische Texte - 10-29-2009 , 09:01 AM



Thomas 'PointedEars' Lahn wrote:

Quote:
Holger Jeromin wrote:
Daher kommst du zu den %u0430 Unicodezeichen, welche der E-Mail client
(welcher eigentlich?) nicht unterstützt.

[...] Der E-Mail-Client unterstützt "Unicodezeichen" sehr wahrscheinlich;
sie müssen nur im URI ichtig codiert werden, nämlich äquivalent `%04%30',
so wie es encodeURIComponent() macht und in RFC3986 definiert ist.
Korrektur: U+0430 wird in UTF-8 mit D0 B0 (*11*01 0000 *10*11 0000)
codiert¹, d.h. die korrekte Prozent-Codierung dafür ist "%D0%B0", was
encodeURIComponent() in meinem Firefox/Iceweasel 3.5.3 auch liefert.


PointedEars
___________
¹ <http://de.wikipedia.org/wiki/UTF-8#Kodierung>

Reply With Quote
  #7  
Old   
Holger Jeromin
 
Posts: n/a

Default Re: javascript, window.open, mailto und kyrillische Texte - 10-29-2009 , 09:19 AM



Thomas 'PointedEars' Lahn schrieb am 29.10.2009 13:51:
Quote:
Holger Jeromin wrote:
escape basiert auf latin1, wo es keine Entsprechung für kyrillisch
Zeichen gibt.
Das ist falchs. Das proprietäre escape() basiert zunächst einmal lediglich
auf 8-Bit-Zeichencodierungen und damit implementierbaren Zeichensätzen;
davon ist ISO-8859-1 (Latin-1) einer. Aber auch für Kyrillisch gibt es
natürlich (mindenstens) eine(n), darunter KOI8-R und ISO-8859-5, denn auch
z.B. Russen möchten für ihre normale Schriftsprache keine Unicode-Tastatur
benutzen müssen.
Zeigst du mir ein ECMAScript-Irgendwas, was statt Latin1 bei der
Funktion escape() KOI8-R nutzt?

Quote:
Also bleibt dem EcmaScript interpreter nichts anderes
übrig, als sie anders zu speichern.
Das ist ebenfalls fhcsal. Es gibt keinen "EcmaScript interpreter" (egal wie
man das schreibt. Konkret werden wird syntaktisch korreter Quelltext von
ECMAScript-Implementationen wie JavaScript und JScript zu Bytecode
*compiliert* und *dieser Bytecode* dann von einer Virtuellen Maschine
Ausser im IE oder anderen alten Browsern.

Quote:
Daher kommst du zu den %u0430 Unicodezeichen, welche der E-Mail client
(welcher eigentlich?) nicht unterstützt.
Und nochmal mit beiden Händen voll ins Klo gegriffen. Der E-Mail-Client
unterstützt "Unicodezeichen" sehr wahrscheinlich; sie müssen nur im URI
richtig codiert werden, nämlich äquivalent `%04%30', so wie es
encodeURIComponent() macht und in RFC3986 definiert ist. `%u0430' ist
hingegen kein "Unicodezeichen" (egal wie man es schreibt).
=> Der E-Mail-Client unterstützt das %u0430 in dieser Form nicht.

Du solltest deinen Beißreflex mal gegen Lesekompetenz tauschen.

--
Mit freundlichen Grüßen
Holger Jeromin

Reply With Quote
  #8  
Old   
John
 
Posts: n/a

Default Re: javascript, window.open, mailto und kyrillische Texte - 10-29-2009 , 09:30 AM



Hallo zusammen,

danke für die reichlichen Antworten. Insbesondere PointedEars
Engagement dabei. Was mich erschreckt ist der Ton, der dabei von dir
(PointedEars) angeschlagen wurde. Anscheinend bist du Experte und
versucht auch irgendetwas mitzuteilen, was man deiner Meinung nach
doch längst hätte wissen sollen.
Dein Gegenüber (in diesem Fall ich) kenne mich auch nach ausführlichen
Studieren unterschiedlichster Quellen bzgl. UTF, Kyrillisch u.ä. nach
wie vor nur bedingt in diesem Segment aus. Und genau hier sehe ich den
großen Nutzen dieser Gruppen und wenn ich andere Topics anschaue, dann
ist dieses Thema ganz und garnicht trivial.

Und ja, ich habe mir die Mühe gemacht, einmal in einer deutschen und
einmal in einer englischen Gruppe diese Frage zu posten, da nicht
jeder in beiden Sprachen zu Hause ist. Das ist schon ok

Nichtsdestotrotz funktioniert es nach wie vor nicht. D.h. deine
Ausführugnen haben nicht zur einer Lösung geführt, bzw. mir nicht
weitergeholfen.

Der client, den ich verwende ist Outlook Express.

Nutze ich encodeURIComponent() ändert sich die Encodierung zwar und
die UTF Cods (%u1223) werden in andere Symbole umgewandelt, doch die
Darstellung ist nach wie vor nicht Kyrillisch.

D.h. so recht bin ich nicht weitergekommen mit diesem Problem und wäre
über weitere (echte) Hilfe sehr dankbar.



On 29 Okt., 13:54, Thomas 'PointedEars' Lahn <PointedE... (AT) web (DOT) de>
wrote:
Quote:
Chris Seidel wrote:
On Thu, 29 Oct 2009 10:31:00 +0100, John <boba... (AT) googlemail (DOT) com> wrote:
In Kyrillisch erscheinen Subject und Body im Email Client wie folgt.

%u0430%u0442%u0438%u0441%u043D%u0456%u0442%u044C %u043D
%u0430%u0441%u0442%u0443%u043F%u043D%u0435 %u043F%u043E
%u0441%u0438%u043B%u0430

Schaue ich mir den HTML Sourcecode an, steht im escape Teil des
subjects/bodys aber correct der kyrillische Text.

Ich sag mal, der EMail-Client kann das dann nicht?

Wahrscheinlich kann er es. *Die Frage wurde dem multipostenden
OP auch in comp.lang.javascript bereits ausführlich beantwortet.

PointedEars

Reply With Quote
  #9  
Old   
Thomas 'PointedEars' Lahn
 
Posts: n/a

Default Re: javascript, window.open, mailto und kyrillische Texte - 10-29-2009 , 11:36 AM



Holger Jeromin wrote:

Quote:
Thomas 'PointedEars' Lahn schrieb am 29.10.2009 13:51:
Holger Jeromin wrote:
escape basiert auf latin1, wo es keine Entsprechung für kyrillisch
Zeichen gibt.
Das ist falchs. Das proprietäre escape() basiert zunächst einmal
lediglich auf 8-Bit-Zeichencodierungen und damit implementierbaren
Zeichensätzen;
davon ist ISO-8859-1 (Latin-1) einer. Aber auch für Kyrillisch gibt es
natürlich (mindenstens) eine(n), darunter KOI8-R und ISO-8859-5, denn
auch z.B. Russen möchten für ihre normale Schriftsprache keine
Unicode-Tastatur benutzen müssen.

Zeigst du mir ein ECMAScript-Irgendwas, was statt Latin1 bei der
Funktion escape() KOI8-R nutzt?
Dazu müsste ich bei Russisch-Inkasso anrufen, und das willst Du nicht
wirklich.

Quote:
Also bleibt dem EcmaScript interpreter nichts anderes
übrig, als sie anders zu speichern.
Das ist ebenfalls fhcsal. Es gibt keinen "EcmaScript interpreter" (egal
wie
man das schreibt. Konkret werden wird syntaktisch korreter Quelltext von
ECMAScript-Implementationen wie JavaScript und JScript zu Bytecode
*compiliert* und *dieser Bytecode* dann von einer Virtuellen Maschine

Ausser im IE oder anderen alten Browsern.
Das ist schon deswegen Unfug, weil die von IE unterstützte ECMAScript-
Implementation Microsoft JScript ist.

Quote:
Daher kommst du zu den %u0430 Unicodezeichen, welche der E-Mail client
(welcher eigentlich?) nicht unterstützt.
Und nochmal mit beiden Händen voll ins Klo gegriffen. Der E-Mail-Client
unterstützt "Unicodezeichen" sehr wahrscheinlich; sie müssen nur im URI
richtig codiert werden, nämlich äquivalent `%04%30', so wie es
encodeURIComponent() macht und in RFC3986 definiert ist. `%u0430' ist
hingegen kein "Unicodezeichen" (egal wie man es schreibt).

=> Der E-Mail-Client unterstützt das %u0430 in dieser Form nicht.
Nein, er unterstützt es, deshalb erscheint es ja in der Betreffzeile.

Quote:
Du solltest deinen Beißreflex mal gegen Lesekompetenz tauschen.
Du solltest Dein Geschwafel gegen den Hauch der Spur einer Ahnung tauschen.


PointedEars

Reply With Quote
  #10  
Old   
Holger Jeromin
 
Posts: n/a

Default Re: javascript, window.open, mailto und kyrillische Texte - 10-29-2009 , 11:50 AM



Thomas 'PointedEars' Lahn schrieb am 29.10.2009 16:36:
Quote:
Holger Jeromin wrote:
Thomas 'PointedEars' Lahn schrieb am 29.10.2009 13:51:
Holger Jeromin wrote:
Also bleibt dem EcmaScript interpreter nichts anderes
übrig, als sie anders zu speichern.
Das ist ebenfalls fhcsal. Es gibt keinen "EcmaScript interpreter" (egal
wie
man das schreibt. Konkret werden wird syntaktisch korreter Quelltext von
ECMAScript-Implementationen wie JavaScript und JScript zu Bytecode
*compiliert* und *dieser Bytecode* dann von einer Virtuellen Maschine
Ausser im IE oder anderen alten Browsern.
Das ist schon deswegen Unfug, weil die von IE unterstützte ECMAScript-
Implementation Microsoft JScript ist.
*compiliert* denn Firefox 1.5 JavaScript zu Bytecode wie du behauptet hast?

--
Mit freundlichen Grüßen
Holger Jeromin

Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.4
Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.