Con Javascript, utf-8-percento-codifica l'oggetto e gli hfvalues del corpo utilizzando encodeURIComponent() su una pagina UTF-8.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title></title>
<script>
function SendLinkByMail(href) {
var subject= "Interesting Information";
var body = "I thought you might find this information interesting:\r\n\r\n<";
body += window.location.href;
body += ">";
var uri = "mailto:?subject=";
uri += encodeURIComponent(subject);
uri += "&body=";
uri += encodeURIComponent(body);
window.open(uri);
}
</script>
</head>
<body>
<p><a href="javascript:(function()%7BSendLinkByMail()%3B%7D)()%3B">Email link to this page</a></p>
</body>
</html>
Se stai facendo questo server-side, si può semplicemente costruire il link mailto ed emettono come il valore dell'attributo href. Quindi, non avrai affatto bisogno di JS.
Suppongo che ASP abbia alcune funzioni di codifica URI che funzionano come encodeURIComponent().
È anche possibile visualizzare la fonte della mia pagina mailto URI composer come altro esempio.
Si può anche dare un'occhiata a http://shadow2531.com/opera/testcases/mailto/mailto_uri_scheme_idea.html#send_link_by_mail e il mio mailto URI syntax validator.
Per il <e> in cui incorporo l'URI, nel codice JS sopra, vedere "Appendice C. Delimitare un URI nel contesto" di RFC3986 per il motivo.
Inoltre, invece di window.location.href, è possibile utilizzare window.location o document.location.href o document.location. Di solito uso "document.location".
Per il motivo per cui si utilizza un URI JavaScript anziché un attributo onclick, vedere this answer.
Si noti inoltre che nell'URI JS nel codice sopra, ho avvolto il codice in una funzione anonima. Non è necessario in questo caso perché la funzione non restituisce nulla che cambierebbe il documento quando si fa clic. Ma è solo fare tutto il tempo per buona misura.
Vedere il mio Javascript URI compose per aiutare con la creazione di URI javascript.
Javascript potrebbe farlo per voi. Utilizzando "document.location.href". Oppure, se stai usando .php puoi farlo ancora più facilmente. Puoi usare php? fammi sapere e posso fare un esempio per te! –
No, io uso Asp;) Ma come posso scrivere javascript in quella parte? (Body = "...") –