如何使用JavaScript通过电子邮件发送表单内容?

时间:2010-03-04 09:17:52

标签: javascript html email forms

我有一个反馈HTML表单,我需要将结果发送到电子邮件地址。我如何在JavaScript中执行此操作?

11 个答案:

答案 0 :(得分:2)

你做不到。您需要使用某种背景技术,例如python,ruby,coldfusion,php或ASP才能将其发送到您的电子邮箱。

网上有一些免费服务可以让你使用他们自己的资源来做到这一点,但如果你正在处理安全信息,你最好使用自己的资源。

这是一个free PHP service,允许你做类似的事情,但请记住,这种服务通常是不可靠的。

答案 1 :(得分:1)

您唯一的选择是提交常规表格,然后在服务器端发送。

答案 2 :(得分:1)

您可以尝试执行此操作的一种方法是

<form action="mailto:example@example.com">

提交时会尝试通过电子邮件将表单发送到给定的电子邮件地址,这是一个非常讨厌的解决方案,因为它依赖于客户端具有正确配置的邮件客户端。此外,您无法控制电子邮件的呈现方式。 请参阅Beware of Form Mailto Action了解一些陷阱。

答案 3 :(得分:0)

不可能,仅使用javascript,但在服务器端脚本的帮助下,你可以。

请查看php邮件功能here

答案 4 :(得分:0)

您有两种选择:

1)使用mailto链接。虽然您可以使用Javascript“点击”mailto链接,但Javascript并不是必需的。这将导致用户的电子邮件客户端打开,并使用收件人电子邮件地址预填充新电子邮件。 mailto links邮件链接不可靠的原因有很多(请参阅下面的评论)。不建议使用它们。

2)将表单提交回服务器,然后从服务器发送电子邮件。无论服务器端代码是什么(php,c#等)都应该能够发送电子邮件。这样您就可以保证发送电子邮件了。

您无法以静默方式从浏览器发送电子邮件。它必须在用户帮助下或在服务器上发生。

答案 5 :(得分:0)

除了可能的AJAX,我别无知道。

编辑:澄清--AJAX会调用另一个像PHP这样的函数来实际发送邮件。您需要在服务器端实现它。

EDIT2:Here's an article

答案 6 :(得分:0)

它不可能:)但是,你可以使用由python(django),php,asp.net等编写的jQuery和后端应用程序。

简单的jQuery脚本:

$('#button').click(function(){
    $.post('backend.php',
        {message:$('#message').val(),
         name: $('#name').val(),
         email:$('#email').val()},
         function(data) {
             $('.result').html(data);
         });
});

PHP脚本:

<?php
if($_POST['message']) 
{
    $body = "Name: ".$_POST['name'];
    $body .= "<br>Email: ".$_POST['email'];
    $body .= "<br>Message: ".$_POST['message']
    if(mail("yourmail@mail.com","Subjects",$body))
        echo 'true';
    else echo 'false;';
}
?>

简单,无需安全修复。

答案 7 :(得分:0)

您无法使用纯JavaScript进行此操作,您可能也想使用 ajax ,但在幕后应该有 server-side language < / strong>发送电子邮件。

答案 8 :(得分:0)

如果你想要的东西甚至接近为合理数量的人工作,那么在问题的限制范围内,你需要使用server side JavaScript(具体取决于你所使用的SSJS的具体实现使用,see Whitebeam for an example)。

答案 9 :(得分:-1)

你必须使用像php或perl这样的服务器端脚本

将表单内容发送到服务器端php。在php中使用sendmail函数编写。

您的内容将发送到该电子邮件。

答案 10 :(得分:-2)

您无法使用客户端 javascript发送邮件。将表单提交到服务器端脚本,如PHP / JSP / ASP等,并从该脚本发送邮件。