Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/472.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript在mailto正文中添加换行符_Javascript_Html - Fatal编程技术网

Javascript在mailto正文中添加换行符

Javascript在mailto正文中添加换行符,javascript,html,Javascript,Html,我正在使用表单中的值设置电子邮件的正文 firstname = bob lastname = dole ebody = 'First Name: ' + firstname + '\r\n' + 'Last Name: ' + lastname window.location.href = 'mailto:myemail@mycompany.com?subject=test email&body=' + ebody; 如果我做了一个“警报(乌木);”我会得到名

我正在使用表单中的值设置电子邮件的正文

  firstname = bob
  lastname = dole

   ebody = 'First Name: ' + firstname + '\r\n' + 'Last Name: ' + lastname

  window.location.href = 'mailto:myemail@mycompany.com?subject=test
  email&body=' + ebody;
如果我做了一个“警报(乌木);”我会得到名字之间的换行符& 但是,当它打开outlook时,整个ebody字符串 在电子邮件正文中不显示换行符

我也试过了。有什么东西能给你一句话吗 休息


提前感谢

我希望outlook尝试将其输出为html/富文本,因此在这种情况下,您需要以下内容(包括urlencoded br标记):

表示mailto正文内容必须是URL编码的,对通常在URL中编码的字符使用%转义形式。这些字符包括空格和(如2368年第5节中明确指出的)CR和LF

你可以通过写作来做到这一点

ebody = 'First%20Name:%20' + firstname + '%0D%0A' + 'Last%20Name:%20' + lastname;
但是让JavaScript为您进行转义更容易、更好,如下所示:

ebody = 'First Name: ' + firstname + '\r\n' + 'Last Name: ' + lastname;
ebody = encodeURIComponent(ebody);

这不仅可以避免您识别和查找需要在固定文本中编码的字符的十六进制值,还可以在
firstname
lastname
变量中对任何愚蠢的字符进行编码。

您只需使用编码
%0D%0A
进行换行即可

firstname = 'Aung ';
lastname = 'Kyaw Zaw';

ebody = 'First Name: ' + firstname + '%0D%0A' + 'Last Name: ' + lastname;

window.location.href = 'mailto:myemail@mycompany.com?subject=testemail&body=' + ebody;

有时,当您使用HTML/JavaScript从SharePoint内容编辑器Web部件打开outlook时。那么你也需要考虑下面的选项。

使用代码-

%0D%0A%0D%0A

换一条新线路


只是一个想法,您是否尝试过像
\\r\\n
那样转义反斜杠?是否尝试过对字符进行编码?-><代码>%0D%0A您的电子邮件的MIME类型是text/plain吗?Outlook可能试图将其解释为富文本。
firstname = 'Aung ';
lastname = 'Kyaw Zaw';

ebody = 'First Name: ' + firstname + '%0D%0A' + 'Last Name: ' + lastname;

window.location.href = 'mailto:myemail@mycompany.com?subject=testemail&body=' + ebody;