HTML邮件表单:预填主题和正文

19

我正在编辑一个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:hello@hello.com">hello@hello.com</a>
                </li>
            </ul>
        </div>
    </div>
</div>

1
如果您正在动态添加内容或您的正文/主题包含空格,请不要忘记对URL进行编码。否则,您将得到非常奇怪的结果! - Sami M
1个回答

45

如果我理解正确,您可以使用mailto链接在电子邮件客户端中打开时预定义消息的正文和电子邮件地址。

<a href="mailto:hello@hello.com?subject=Email Subject&body=Contents of email">hello@hello.com</a>

使用AJAX表单可能更合适,因为用户不需要打开邮件客户端来访问链接。


1
谢谢回复。我尝试了那个方法,但是它让用户在 Outlook 中输入信息而不是在网站上输入。这是一个本地网站,每个人都使用 Outlook。我想要的是,当用户在网站上填写完所有信息后,点击“发送”按钮,然后 Outlook 自动打开并将所有信息填写好,然后用户只需点击“发送”。表格看起来像这样:http://imgur.com/13JRi8Z - user2642450
如果您希望在Outlook中使用此信息,则不需要电子邮件输入。我建议使用PHP / AJAX联系表单以便于使用 - 它将允许用户轻松输入他们的消息,姓名和电子邮件,并将其直接发送到所需的电子邮件。这里是一个AJAX联系表单的示例。下载它将为您提供一个基础,以便根据您的需求进行编辑。 - JoshMc
这很好。有没有可能将其制作成HTML电子邮件?例如,我尝试过 mailto:name@example.com?body=content<br/>with<br/>html&html=true,但它不起作用。(对我来说,这些链接会转到Gmail,也许这是每个电子邮件客户端特定的) - donquixote
回答我的问题:https://dev59.com/8G035IYBdhLWcg3wGMHa - donquixote
1
让用户的电子邮件客户端发送电子邮件可以使电子邮件对发送者和接收者都可追踪(它将保存在发送者的发件箱中,并且电子邮件将来自发送者,而不是来自Web表单邮寄服务,该服务可能没有以该发送者身份发送电子邮件的特权)。 - reinierpost

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接