如何使用javascript在电子邮件正文中添加html?

如何使用javascript在电子邮件正文中添加html?,javascript,html-email,Javascript,Html Email,我必须向用户发送一封确认电子邮件。 点击一个链接,我想打开他们默认的电子邮件客户端,在body标签中添加一个HTML var subject = Your transaction No: +': ' + $('#confirmationNumber').text()+ ' is confirmed'; var emailBody = $('#confirmation').html(); $(this).attr('href','mailto:'+userEmail+'&subject='

我必须向用户发送一封确认电子邮件。 点击一个链接,我想打开他们默认的电子邮件客户端,在body标签中添加一个HTML

var subject = Your transaction No: +': ' + $('#confirmationNumber').text()+ ' is confirmed';
var emailBody = $('#confirmation').html();
$(this).attr('href','mailto:'+userEmail+'&subject=' + subject +'&body='+ emailBody); 
它希望“emailBody”中的HTML作为HTML附加到正文中。但它会显示整个HTML标记

有没有办法在正文中附加HTML?使用

var emailBody = $('#confirmation').text();

首先,对代码进行一些修复:

var subject = 'Your transaction No: ' + $('#confirmationNumber').text() + ' is confirmed',
    emailBody = $('#confirmation').html();
$(this).attr('href', 'mailto:' + userEmail + '&subject=' + subject + '&body=' + encodeURI(emailBody));
  • 使用单个
    var
    关键字并用逗号分隔变量
  • 主题
    连接不良
接下来,如果您想在链接中传递html代码,您必须对特殊字符进行编码,而
encodeURI()
就是这样做的


哦,编码的正文在电子邮件客户端中不作为html处理。。
我在谷歌上搜索了一会儿,似乎你不能正确地传递信息,你不能发送一条消息而不是打开客户端吗?

答案很短,但很不幸:

否。

使用
mailto:
-链接时,只能指定文本,不能指定HTML。即使用户的邮件客户端使用HTML编写邮件消息,您的正文文本也只能作为文本插入


你在网页上对此无能为力。

是的,我用过。。。但它会在邮件正文的一行中添加所有文本。。。我需要一些粗体标记和换行符。正文必须是“文本/纯文本”,不能在其中使用HTML标记。1非常抱歉主题内容不好,我已经键入了一个。和:(对于hte encodeURI。这是客户的要求。但你是对的。我将以消息的形式发送它。)。。