HTML-форма mailto: предварительно заполните тему и тело

Я редактирую HTML-шаблон и мне нужна помощь в разделе контактной формы. Я хочу сделать так, чтобы когда пользователь нажимал кнопку отправки сообщения, открывался почтовый клиент по умолчанию (в моем случае Outlook), а имя, тема и тело сообщения электронной почты предварительно заполнялись значениями из формы. Как бы я это сделал?

Разметка контактной формы:

<div id="footer" class="container">
    <header>
        <h2>Questions or comments? <strong>Get in touch:</strong></h2>
    </header>
    <div class="row">
        <div class="6u">
            <section>
                <form>
                    <div class="row half">
                        <div class="6u">
                            <input name="name" placeholder="Name" type="text" class="text" />
                        </div>
                        <div class="6u">
                            <input name="Subject" placeholder="Subject" type="text" class="text" />
                        </div>
                    </div>
                    <div class="row half">
                        <div class="12u">
                            <textarea name="message" placeholder="Message"></textarea>
                        </div>
                    </div>
                    <div class="row half">
                        <div class="12u">
                            <a href="#" class="button button-icon icon icon-envelope">Send Message</a>
                        </div>
                    </div>
                </form>
            </section>
        </div>

        <div class="row">
            <ul class="icons 6u">
                <li class="icon icon-home">
                    <h6> 1235 street <br />
                    city, state 0000<br /> </h6>
                </li>
                <li class="icon icon-phone">
                    <h6>(000) 000-0000 </h6>
                </li>
                <li class="icon icon-envelope">
                    <a href="mailto:[email protected]">[email protected]</a>
                </li>
            </ul>
        </div>
    </div>
</div>

person user2642450    schedule 01.08.2013    source источник
comment
Не забудьте закодировать URL-адрес, если вы динамически добавляете контент или ваше тело/тема содержит пробелы. В противном случае вы получите очень странные результаты!   -  person Sami M    schedule 09.08.2018


Ответы (1)


Если я вас правильно понял, вы можете использовать ссылки mailto для предопределения тела и электронной почты сообщения при открытии в почтовом клиенте.

<a href="mailto:[email protected]?subject=Email Subject&body=Contents of email">[email protected]</a>

Форма AJAX может быть более подходящей, поскольку пользователю не потребуется почтовый клиент для открытия ссылки.

person JoshMc    schedule 01.08.2013
comment
Спасибо за ответ. Я пробовал это, но это позволяло пользователю размещать информацию в Outlook, а не на сайте. Это локальный сайт, и все используют Outlook. То, что я хочу, это когда пользователь заполняет все на сайте, а затем нажимает «Отправить», а затем открывается Outlook со всей уже заполненной информацией, а затем они могут просто нажать «Отправить». Форма выглядит так: imgur.com/13JRi8Z - person user2642450; 01.08.2013
comment
Если вы хотите, чтобы информация использовалась в Outlook, ввод электронной почты не требуется. Я предлагаю для простоты использовать контактную форму PHP/AJAX - она ​​позволит пользователю ввести свое сообщение, имя и адрес электронной почты и с легкостью отправить его непосредственно на желаемый адрес электронной почты. Вот пример контактной формы AJAX. Скачав его, вы получите базу для редактирования в соответствии с вашими потребностями. - person JoshMc; 01.08.2013
comment
Это приятно. Есть ли шанс сделать это электронной почтой в формате HTML? Например. Я пробовал mailto:[email protected]?body=content<br/>with<br/>html&html=true, но это не работает. (для меня эти ссылки ведут на gmail, возможно, это зависит от почтового клиента) - person donquixote; 02.02.2018
comment
Ответ на мой собственный вопрос: stackoverflow.com/questions/5620324/mailto- с-html-телом - person donquixote; 02.02.2018
comment
Когда почтовый клиент пользователя отправляет электронное письмо, электронное письмо можно отследить как для отправителя (оно будет сохранено в папке «Исходящие»), так и для получателя. иметь право отправлять электронную почту в качестве этого отправителя). - person reinierpost; 08.11.2019