Предварительно заполнить письмо содержимым HTML - PullRequest
5 голосов
/ 06 апреля 2009

Я работал над проектом с функцией, так что, когда я нажимаю кнопку, открывается Outlook, и соответствующее значение, сохраненное в переменной, будет в теле письма. Я пробовал следующий код:

<html>
<head>
    <title>Email This Code Snippet</title>
    <script language="javascript">
    function TriggerOutlook()
    {         
        var sub = "Hi friend";
        var bodycont = "<html><body>welcome</body></html>";
        var body = escape(bodycont + String.fromCharCode(13));        
        window.location.href = "mailto:sakthivela@yahoo.com"
                             + "?body=" + body
                             + "&subject=" + sub
        ;                
    }    
</script>
</head>
<body>
<form id="form1">
    <a href="#" onclick="TriggerOutlook()">Email this Codesnippet</a>
    <input type="text" name="txtbody" id="txtbody">
</form>
</body>
</html>

Но текст письма <html><body>welcome</body></html> в виде обычного текста, а не HTML. Как мне отформатировать его как HTML?

Ответы [ 2 ]

5 голосов
/ 06 апреля 2009

Вы не можете. Спецификация mailto не имеет такого контроля над почтовым клиентом, который вызывается браузером.

1 голос
/ 06 апреля 2009

Интересно, что ваш код работает для меня как есть, когда Thunderbird является почтовой программой по умолчанию. Очевидно, Thunderbird достаточно умен, чтобы заметить, что тело начинается с <html> и переключается в режим HTML-почты.

Поначалу может показаться, что для того, чтобы убедить Outlook вести себя аналогично, вы можете попробовать установить заголовок Content-Type в письме на "text / html". Однако я не понимаю, как это возможно с помощью mailto, поскольку вы не можете контролировать заголовки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...