我现在正在构建一个网络应用程序,需要使用 mailto: 链接作为“告诉朋友”部分。消息正文对于 URL 来说太长,因此我将其置于隐藏表单中,并通过 jQuery 发送该表单。
一切都工作得很好,除了在空格应该去的地方添加了+号。我尝试过取消转义,用空格替换“+”,但是一旦到达“mailto_form.submit();”,+号就会添加到主题和正文中。
在此先感谢您的任何建议!
<form id="mailto_form" action="mailto:" style="visibility:hidden;position:absolute;height:1px;width:1px;" method="get">
<input type="hidden" name="Subject" value="{$tellafriend_subject|replace:'"':'"'}">
<input type="hidden" name="Body" value="{$tellafriend_body|replace:'"':'"'}">
<input type="submit">
</form>
$(".email_link").click(function(e) {
var mailto_form = $("#mailto_form");
var val = $("input[name=Subject]", mailto_form).val();
val = val.replace("[[[NAME]]]", firstname);
$("input[name=Subject]", mailto_form).val(val);
var val = $("input[name=Body]", mailto_form).val();
val = val.replace("[[[NAME]]]", firstname + " " + lastname);
$("input[name=Body]", mailto_form).val(val);
mailto_form.submit();
e.preventDefault();
});
Use %20
看来是iOS邮件客户端的问题。替代+
,您可以将空格 URL 编码为%20
。我刚刚遇到这个问题,%20 是我的解决方案。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)