Как установить правильное имя для получателя, когда в HTML я хочу использовать тег mailto.
Что-то вроде:
mailto:"John Wayne([email protected])?subject..
Как мне это достичь?
Как установить правильное имя для получателя, когда в HTML я хочу использовать тег mailto.
Что-то вроде:
mailto:"John Wayne([email protected])?subject..
Как мне это достичь?
Оригинальный стандарт для ссылок mailto:, RFC 1738, говорит следующее:
URL-адрес mailto принимает форму:
mailto:<rfc822-addr-spec>где
<rfc822-addr-spec>(кодирование a)addr-spec, так как указанный в RFC 822 [6].
В соответствии с этим определением не может быть включено собственное имя.
Но раздел mailto: RFC 1738 был заменен RFC 2368, который позволяет (среди прочего, включая предопределенные сюжетные линии) для RFC 822 mailbox спецификация, которая включает в себя собственное имя.
[2016-05-31] Как отмечает Давид Балажич в комментарии, RFC 2368 в свою очередь устарел RFC 6068. Из раздела 9 "Основные изменения из RFC 2368":
Основные изменения RFC 2368 заключаются в следующем:
В реальном использовании mailto:Fred Foo<[email protected]> все еще работает, но его официально не поддерживает; вам также может потребоваться кодировать пространство, т.е. mailto:Fred%20Foo<[email protected]>, и/или поместить имя в кавычки, то есть mailto:"Fred Foo"<[email protected]>.
Попробуйте это: mailto:%22John%20Wayne%22%[email protected]%3e?subject..
Оберните имя в %22 и в электронном письме %3c перед ним, %3e после него и %20 для пробелов
Это выведет: "John Wayne"<[email protected]>
Полный список кодировки URL здесь: http://www.w3schools.com/tags/ref_urlencode.asp
Я пробовал
mailto:John Wayne<[email protected]>?subject...
и, похоже, он работает.
<a href="mailto:lala lala2([email protected])?subject=MailTo Comments&[email protected]&[email protected]">ddddd</a>
Помните, чтобы использовать только один? (знак вопроса) при предоставлении нескольких записей за пределами адреса электронной почты
Как упоминалось в других ответах, RFC 2368 позволяет использовать полный синтаксис mailbox, который может находиться в name-addr (display-nameплюс angle-addr) (RFC 5322). К сожалению, это было устарело RFC 6068, которое позволяет только форма addr-spec. Тем не менее, обе спецификации позволяют исключить полномочия URI (где обычно идет адрес), и указывать полные поля заголовка (включая To:) в качестве параметров запроса. Поэтому mailto:?to=John%20Wayne%20%[email protected]%3e действительно.
Все зависит от того, какой почтовый клиент вы используете. Я уже давно пробовал в Outlook Express, и все в порядке. Но через много лет я использую Dream Mail, и он будет включать только часть адреса электронной почты, но не укажет название.
Кодировать uri и назначать его mailto.
Также ваше электронное письмо и отображаемое имя должны быть сформированы как John Wayne <[email protected]> or [email protected] (John Wayne).
Убедитесь, что вы сделали encodeURI для них. Иначе это не будет нормально работать в разных почтовых клиентах.
Вы не можете установить имя квитанции на mailto ссылки