mailto onclick中的换行符

mal*_*974 20 javascript mailto line-breaks

下面的代码很有效,除了电子邮件在一行上有所有文本,如下所示:高度:60 | 对角线:123 | 宽度:107 | 总SF:13.92 | 每SF成本:450 | 总费用:$ 6,264.00

我想在每次之后打破所以它看起来像这样:

高度:60
对角线:123
宽度:107
总SF:13.92
每SF成本:450
总成本:$ 6,264.00

我试过\n\r \n\r \n等,但它们都没有用.有任何想法吗?

<a class="emailText" href="mailto:?subject=Screen Dimensions" onclick="this.href='mailto:?subject=Screen Dimensions&body='+'Height: '+document.forms.myform.high.value+' | '+'Diagonal: '+document.forms.myform.diagonal.value+' | '+'Width: '+document.forms.myform.wide.value+' | '+'Total SF: '+document.forms.myform.sf.value+' | '+'Cost Per SF: '+document.forms.myform.csf.value+' | '+'Total Cost: '+document.forms.myform.tc.value">Email</a>
Run Code Online (Sandbox Code Playgroud)

Jef*_*f B 60

您需要使用ASCII值进行换行/回车:

%0A = \n

%0D = \r

%0D%0A = \r\n
Run Code Online (Sandbox Code Playgroud)

奇迹般有效.

<a href="mailto:person@somedomain.com?subject=My subject&body=Hello %0D%0A World">Link</a> 
Run Code Online (Sandbox Code Playgroud)

(为了清晰起见,在%0D%0A附近添加了空格.实际上,这可能会增加不需要的空白区域.)

  • 有没有人注意到这样做会剥夺Outlook中的电子邮件签名? (2认同)