Hallo Beat, vielen Dank für die Ratschläge!
das externe Script sieht jetzt so aus:
e1='adresse';
e2='domain';
e3='de';
e=e1+'@'+e2+'.'+e3;
betreff="?subject=Betreff";
inhalt="&body="+Mailinhalt;
a1='<a id="mailtolink" onClick="addToMailbody()" href="mai' + 'lto:';
a2='">';
a3='</a>';
link=a1+e+betreff+inhalt+a2+e+a3;
document.write(link);
function addToMailbody(){
b1='mai' + 'lto:'
neu=b1+e+betreff+inhalt;
document.getElementById('mailtolink').href = neu;
}
Wenn ich den OnClick-Händler rausnehme, funktioniert der Link, und schreibt eine E-Mail mit dem gewünschtem Betreff und dem im HTML definierten Mailinhalt.
Auch href zu ändern funktioniert mit der Funktion addToMailbody, wenn ich damit auf eine URL verweise, z.B. so:
document.getElementById('mailtolink').href = "http://forum.de.selfhtml.org/"
Möchte ich aber, wie oben, den Link erneut als mailto-Link schreiben, funktioniert er komischerweise nicht mehr. Er wird zwar als mailto-Link erkannt, im Adressfeld von Mail erscheint allerdings folgende Adresse:
adresse@domain.de
die Sonderzeichen-Maskierung wird also nicht mehr rückübersetzt. Außerdem fehlt der Inhalt gänzlich. Kopiere ich anschließend die verlinkte E-Mailadresse mit Rechtsklick aus dem Browserfenster, erhalte ich folgenden Text:
adresse&%2364;domain&%2346;de
Woran liegt das wohl?
Dank und Gruß