我是HTML和Javascript的新手,但我尝试研究如何在选择提交按钮时让表单将其信息发送到电子邮件地址。我的大多数研究表明需要PHP,但是当我问我的教授时,他说只用javascript就可以完成,并且需要以这种方式提交作业。以下是我想要开始工作的内容。
<SCRIPT LANGUAGE="JavaScript">
function mailMe(form){
Subject=document.Registry.name.value;
location = mailto:XXXXXX@yahoo.com?subject="+Subject;
return true;
}
</SCRIPT>
<FORM NAME=“Registry” onSubmit="return mailMe(this.form)" >
<h3><font size=6pt> Visitor Registration </font></h3>
</br>
Name <input type="text" name=“name”><br>
<br>
E-Mail Address <input type="text" name=“mail”><br>
<br>
<INPUT TYPE="submit"><br>
</FORM>
答案 0 :(得分:1)
不能仅使用javascript或客户端技术来完成。
但你可以打开一个带有mailto链接的新窗口。
请注意,这不会发送电子邮件,而是打开您的本地电子邮件应用程序发送电子邮件。
答案 1 :(得分:1)
这是一个非常糟糕的主意。你应该使用AJAX和PHP,这是更好的方法。
如果您真的需要代码,则会出现一些错误。这是正确的:
var Subject = document.getElementById("name").value;
window.location = "mailto:XXXXXX@yahoo.com?subject=" + Subject;
然后你必须在名字字段中添加一个ID:
<input type="text" name=“name” id="name"><br>
但是我要说你真的应该使用PHP mail(),因为那时客户端电子邮件程序不是用来发送邮件而是所有都是在后台完成的。
答案 2 :(得分:0)
我刚刚尝试了下面的例子,我在微软找到它并且工作正常。甚至可以在没有Javascript的情况下通过简单地添加&#34; mailto:&#34;到表单动作属性。另请注意,表单元素名称对应于mailto查询字符串参数,即&#34; subject&#34;和&#34;身体&#34;。
参考文献:Microsoft mailto Protocol和RFC2368:The mailto URL scheme
Micosoft SharePoint,Adobe LiveCycle和其他中间件能够处理后端的电子邮件表单。或者可以使用Java,C#,PHP等自己动手。但是,这不是课堂作业的一部分......呃......我的意思是问题。
<html>
<body>
<form action="mailto:user@example.com" method="get">
<input name="subject" type="hidden" value="Message Title">
Feedback:<br/>
<textarea name=body cols="40">
Please share your thoughts here
and then choose Send Feedback.
</textarea>
<input type="submit" value="Send Feedback">
</form>
</body>
</html>