2011-09-18 16 views
3

我试图编写一个应用程序,允许用户使用mailto标记从outlook发送电子邮件。我知道mailto,它涉及限制可能传递的字符数以及编码。Mailto:指导原则和字符限制

有谁知道我可以使用的字符的确切数量,以及编码特殊字符时遵循的准则是什么?什么是可以使用的最大字符数? Body和Subject或整个行包括mailto语法?

比如我会具备以下条件:

<a href='mailto:[email protected]?subject=Test Mail&body=Line one.%0D%0ALine two.'>Test Link</a> 

这将是69个字符?

忘了提及,支持的浏览器将是IE6。

任何帮助,将不胜感激。

谢谢

回答

4

据我所知,没有限制。

的HTML 4规范只字未提限制

作者可以创建一个不会导致另一个文档,但 反而会导致电子邮件被发送到电子邮件地址的链接。当激活链接 时,用户代理应该使邮件程序打开,其中 包括“收件人:”字段中的目标电子邮件地址。

要在激活链接时发送电子邮件,请指定一个MAILTO URL作为href属性的值。

http://www.w3.org/TR/WD-html40-970917/struct/links.html#h-13.2.2

然而,很多网站报告256个字符的限制

您应该测试一下。

您也可以找到这个问题和答案照明:What is the email subject length limit?

+0

根据规范没有限制,但浏览器支持取决于供应商... –

2

同样的问题在这里,至今没有好。 IE9的限制为每个href =“...”大约505个字符,Chrome 21更好 - 约2000个字符。

更新!据this guys有一种变通方法,它似乎为我工作:

ClientScript.RegisterStartupScript(this.GetType(), "mailto", 

    "<script type = 'text/javascript'>parent.location='" + longMailtoText + 

    "'</script>") ; 

这会尽快客户端获取响应启动脚本和开放的MailClient窗口。 LongMailToText应该遵循所有的标准规则,除了长度 - 到目前为止,我能够通过它发送超过2000个字符。