Этот метод, по-видимому, не работает в моем браузере, и осмотр указывает, что вся тема указания заголовков для mailto
ссылки / действия редко поддерживается, но, возможно, это может помочь ...
HTML:
<form id="fr1">
<input type="text" id="tb1" />
<input type="text" id="tb2" />
<input type="button" id="bt1" value="click" />
</form>
JavaScript (с jQuery):
$(document).ready(function() {
$('#bt1').click(function() {
$('#fr1').attr('action',
'mailto:test@test.com?subject=' +
$('#tb1').val() + '&body=' + $('#tb2').val());
$('#fr1').submit();
});
});
Обратите внимание, что я здесь делаю. Сама форма не имеет никаких действий, связанных с ней. И кнопка отправки на самом деле не является submit
типом, это просто button
тип. Используя JavaScript, я связываюсь с событием нажатия этой кнопки, устанавливаю атрибут действия формы и затем отправляю форму.
Он работает настолько, насколько отправляет форму действию mailto
(моя почтовая программа по умолчанию выскакивает и открывает новое сообщение по указанному адресу), но для меня (Safari, Mail.app) это не совсем так. указав тему или текст в полученном сообщении.
HTML на самом деле не очень хорошая среда для этого, так как я уверен, что другие указывают, когда я набираю это. Вполне возможно, что это может работать в некоторых браузерах и / или некоторых почтовых клиентах. Тем не менее, на самом деле это даже не безопасное предположение, что в наши дни у пользователей будет толстый почтовый клиент. Я не могу вспомнить последний раз, когда я открыл свой. mailto
в HTML - это немного устаревшая функциональность, и в наши дни очень хорошо, если вы выполняете действия с почтой на стороне сервера, если это возможно.