使用JavaScript发送电子邮件

时间:2011-08-17 18:05:16

标签: javascript email

  

可能重复:
  how to send email by using javascript or jquery

如何发送包含JavaScript的电子邮件,可以通过Gmail,Yahoo等方式阅读?

这就是我所拥有的:

<script language="javascript">

       function SendEmail()
       {
           var body = escape(document.Form.textfieldName.value +"\n"+document.Form.textfieldEmail.value +"\n"+document.Form.textfieldMessage.value);

    var sTo="testmail@mail.com";

           var subject = "This is SyntaxHelpSub";

                           window.location.href =
    "mailto:"+sTo+"?subject="+subject+"&body="+body;

               }
</script>

        <div class="formfields">Name: <input class="tbox" id="textfieldName" type="text">

         Email: <input class="tbox" id="textfieldEmail" type="text">

<br><br>

Message: <input class="tbox" id="textfieldMessage" type="text" style="width: 343px">
    </div>

<br>

<input type="button" value="Send!" onclick="SendEmail()" />

2 个答案:

答案 0 :(得分:4)

如果你真的想通过javascript发送电子邮件,那么你需要一个合作的服务器进程,你可以进行ajax调用。 javascript ajax调用会将电子邮件的内容传递给服务器,服务器将发送实际的电子邮件。

浏览器客户端实际上并不发送电子邮件。 mailto:功能允许浏览器与用户选择的电子邮件程序通信,以要求该程序代表用户发送电子邮件。此功能可能存在也可能不存在或在任何给定的浏览器中工作 - 您无从知晓。例如,我的妻子使用雅虎邮件和mailto:链接永远不会为她工作,因为她的计算机上没有电子邮件客户端程序来协调浏览器发送电子邮件。在我看来,如今有这么多网络电子邮件客户端,在浏览器中依赖mailto:功能是一个坏主意。

如果您没有自己的服务器可以为您执行此操作,那么有一些服务,如http://wufoo.com提供电子邮件发送服务(某些部分免费),您可能会提供通过javascript / ajax给他们。要以这种方式使用Wufoo,您必须按照wufoo期望的方式构建一个wufoo表单,将其包含在您的页面中(可以隐藏),填写它(它可以保持隐藏),然后提交它通过ajax和wufoo服务器将电子邮件发送到您想要的目的地。

答案 1 :(得分:2)

你没有。在纯客户端机制中,您使用mailto:前缀放置了一个链接。 AKA:

 mailto:someaddress@gmail.com?subject=SomeText

除了用户必须点击此内容之外,您正在做什么?您无法以编程方式调用发送电子邮件。此外,您也无法控制gmail或yahoo对收到的电子邮件的处理方式。