我使用JavaScript来制定mailto:
URI,但是由于某种原因,\n
字符不起作用。
我的字符串是这样构造的:var emailBody = "This is the first line!\n" + "This is the next line.\n" + "And so on and so forth.\n";
然后我创建一个URL,如下所示:
var mailToLink = 'mailto:' + emailTo
+ '?subject=' + emailSubject
+ '&body=' + emailBody;
并指示浏览器导航到该URI:
var win = window.open(mailToLink, 'emailWindow');
我的电子邮件客户端打开时,窗口中显示了草稿邮件,但所有的“行”都是连续显示的。我看不到换行符,除了那些由于电子邮件客户端的自然换行而呈现的换行符。
我怎样才能生成这封电子邮件与换行符原封不动?
1条答案
按热度按时间6rvt4ljy1#
我创建一个变量:电子邮件链接= '电子邮件收件人:' +电子邮件收件人+?主题=' +电子邮件主题+ '&正文=' +电子邮件正文;
URL中不能有文本换行符。
应该使用
URLSearchParams
生成查询字符串,而不是将字符串混合在一起,这样可以处理任何需要进行的转义。2015年答案:
在将每个值添加到URL字符串时,应通过the
encodeURIComponent()
function传递每个值(这将处理所有具有特殊含义的字符,包括新行、+
、%
等)。