我知道这听起来像是重复但是解决方案对我不起作用:
mailtocommand += 'Pro: '+$("#prosurfername").val()+"%0D%0A";
$('#sendlink').attr('href', mailtocommand);
不进行换行。 两者之间都没有:
var mailtocommand = encodeURIComponent(mailtocommand);
在动态(jquery)创建的mailto中插入换行符的mailto命令是什么?
答案 0 :(得分:1)
据我所知spec,%0D%0A
是新行的正确格式,但它仅适用于mailto消息的正文部分。只需转到链接并搜索“line”,但这里是相关部分:
5编码
RFC 1738要求对URL中的许多字符进行编码。这个 影响可能的一些常见字符的mailto方案 出现在地址,标题或消息内容中。一个这样的角色 是空格(“”,ASCII十六进制20)。请注意上面使用“%20”的示例 对于消息体中的空间。还要注意中断的换行符 消息正文必须用“%0D%0A”进行编码。
...
类似的URL可能有两行具有不同的“发送”请求(in 这种情况下,“发送当前问题”,并在下一行“发送索引”。)
<mailto:infobot@example.com?body=send%20current- issue%0D%0Asend%20index>
没有看到所有的mailtocommand,我无法确定你的问题。看起来你正在正确添加换行符,所以我猜你在设置换行符之前你的mailtocommand设置不包含“body =”。