预填充包含HTML内容的电子邮件

时间:2009-04-06 13:14:36

标签: javascript html

我一直在研究一个带有功能的项目,这样当我点击一个按钮时,Outlook就会打开,存储在变量中的相应值将存在于邮件正文中。我尝试过以下代码:

<html>
<head>
    <title>Email This Code Snippet</title>
    <script language="javascript">
    function TriggerOutlook()
    {         
        var sub = "Hi friend";
        var bodycont = "<html><body>welcome</body></html>";
        var body = escape(bodycont + String.fromCharCode(13));        
        window.location.href = "mailto:sakthivela@yahoo.com"
                             + "?body=" + body
                             + "&subject=" + sub
        ;                
    }    
</script>
</head>
<body>
<form id="form1">
    <a href="#" onclick="TriggerOutlook()">Email this Codesnippet</a>
    <input type="text" name="txtbody" id="txtbody">
</form>
</body>
</html>

但邮件的正文是<html><body>welcome</body></html>纯文本,而不是HTML。如何将其格式化为HTML?

2 个答案:

答案 0 :(得分:5)

你做不到。 mailto specification对浏览器调用的电​​子邮件客户端没有那种控制权。

答案 1 :(得分:1)

有趣的是,当Thunderbird是默认的系统邮件程序时,您的代码可以按原样运行。显然,Thunderbird足够聪明,可以注意到正文以<html>开头并切换到HTML邮件模式。

首先,为了说服Outlook的行为类似,您可以尝试将电子邮件中的Content-Type标头设置为“text / html”。但是,我不知道如何使用mailto来实现这一点,因为你无法控制标题。