我可以使用什么来避免mailto大小限制?

时间:2011-11-29 17:04:20

标签: javascript html mailto

我已经阅读了很多关于避免邮件长度限制的网页,但是我没有找到问题的答案。

我的问题是我无法从服务器发送邮件(使用PHP),因为员工必须在他们的私人邮箱上保留他们的电子邮件历史记录。

在选择一种类型的电子邮件后,我必须打开一些已填写的字段的邮件软件客户端。 我的选择看起来像这样:

<select <!-- ... --> onchange="sendMailClientSide(this.value);">
    <!-- ... -->
</select>

和我的javascript函数:

function sendMailClientSide(refType) {
    // ...
    var dest = "test@domain.ty";
    var subj = "Why this doesn't work ?";
    var body = /* a very big body */;

    var linkMailto = "?bcc="+dest+"&subject="+subj+"&body="+body;
    document.location.href = "mailto:"+linkMailto;
    // ...
}

对于某些邮件类型,这非常有效 但是,如果正文超过1400个字符,则客户端软件无法打开。

我也尝试过提交HTML表单。使用这种方法,限制似乎更高但它仍然有一个限制因为它失败了更大的邮件。 最后,我尝试切割身体(类似于“&amp; body =”+ body1 +“&amp; body =”+ body2 + ...),但它不起作用。

有人知道是否存在扩展mailto大小的Firefox插件吗?或类似的东西(客户端的东西)?

1 个答案:

答案 0 :(得分:1)

我不认为这是直接可能的。也许正如你已经建议的那样使用插件。

我的解决方法是为用户提供一个简单的表单,该表单提交给服务器,然后服务器直接发送邮件(根本不打开客户端邮件程序)。因此,您可以轻松避免尺寸限制。

问题在于,用户没有他们已知的电子邮件界面,因此特殊的文本格式,自定义签名和类似的东西都不起作用。

您必须根据格式需求和谁是收件人来决定这一点。