仅使用HTML正确填充电子邮件

时间:2015-12-07 18:40:09

标签: html forms

对于作业,我需要在我的网页中添加form,并让表单填写一封电子邮件供用户发送。

我在搜索之后写了这篇文章:

<form enctype="text/plain" method="post" action="mailto:[My Email Here]">
    <input type="text" name="subject" value="Subject" />
    <input type="text" name="body" value="Body" />

    <input type="submit" name="submit" value="Submit" />
</form>

正如我所料,打开我的邮件客户端并为我填写电子邮件。问题是,它的填充方式非常丑陋且不直观。主题行留空,主体填充:

subject=Subject

body=Body

submit=Submit

(4 lines of white-space)

理想情况下,我希望“主题”最终出现在主题中,“身体”字段是唯一最终出现在主体中的内容,并且“提交”根本不会出现在用户身上

这可能吗?

此时我只允许使用HTML。 (唯一的HTML。不允许使用内联脚本)。

2 个答案:

答案 0 :(得分:3)

GET而不是POST

将表单的方法从POST更改为GET。使用GET方法会将input字段中的键/值对作为查询字符串附加到mailto:属性的action链接中。这将创建一个URL,电子邮件客户端了解如何解析:

mailto:{TARGET EMAIL ADDRESS}?subject=Subject&body=Body

&#13;
&#13;
<form enctype="text/plain" method="GET" action="mailto:{TARGET EMAIL ADRESS}">
    <input type="text" name="subject" value="Subject"/>
    <input type="text" name="body" value="Body"/>
    <input type="submit" name="submit" value="Submit">
</form>
&#13;
&#13;
&#13;

答案 1 :(得分:-1)

mailto表单将始终将所有字段添加到邮件正文中。 javascript可以帮到你。你被允许使用Javascript ..?

这可能会对你有用

<html>

<form onsubmit="window.location='mailto:me@domain.com?subject='+myform.subject.value + '&body='+myform.comments.value" name="myform"  method="post">

<input name="subject"  value="Commencement Form" />
<input name="comments"  value="my body" />
<input type="submit" value="submit">
</from>
</html>