当有人点击我网页上的"电子邮件"按钮时,在jQuery中,我会将一些纯文本放在一起并打开它:
document.location.href = "mailto:?subject=" + emailSubject + "&body=" + emailContent;
但是,Outlook 会去除电子邮件的所有换行符。
这个问题已经在Stack Overflow和其他地方广泛讨论过。
我需要自己创建电子邮件,并且其他人正在阅读它。 因此,更改Outlook中的设置(以阻止其删除换行符(无济于事。
我已经尝试了互联网上给出的所有技巧来欺骗Outlook不删除换行符。
其中:
(1(在行前放两个空格(2(行后三个空格(3( 使用"\r"(4( 使用两个或多个"\r":"\r\r"或"\r\r\"或(5( 在换行符之前或之后添加制表符:"\r\t"和"\t\r"。
制表符是我可以看到打印的唯一字符,但我需要换行符。
我使用的是 Outlook 版本 1708(Office 365 专业增强版的一部分(。
好的,encodeURIComponent 工作:
document.location.href = "mailto:?subject=" + emailSubject + "&body=" + encodeURIComponent(emailContent);
我没有注册document.location.href
是一个 uri 的事实,所以它当然会去除换行符。