如何将表单数据发送到特定的电子邮件?

时间:2015-05-20 23:38:54

标签: javascript html-form

我有一个html form,我希望用它来实现两件事: 1) - 当用户点击"submit"时,数据会自动发送到特定的电子邮件,2) - 用户被重定向到"confirmation page"。我不想使用mailto函数,因为它非常糟糕,因为它依赖于浏览器。我想使用一个简单的脚本......是否可以使用js?

2 个答案:

答案 0 :(得分:3)

单独使用JavaScript无法做到这一点。

可以做的是使用AJAX将表单数据发送到服务器端脚本,该脚本将发送您的电子邮件,然后AJAX成功处理程序可以将页面重定向到某个确认页面。

某些主机安装了电子邮件脚本,如CGI脚本,以便在服务器端为您处理发送电子邮件。

这基本上是你在客户端可以做的最好的事情(使用jQuery轻松):

var data = {
    name: $("#form_name").val(),
    email: $("#form_email").val(),
    message: $("#msg_text").val()
};
$.ajax({
    type: "POST",
    url: "email.php",
    data: data,
    success: function(){
        // Redirection on success
        var url = "http://example.com/confirmation.html";    
        $(location).attr('href',url);
    }
});

和基本的服务器端脚本:

<?php
if($_POST){
    $name = $_POST['name'];
    $email = $_POST['email'];
    $message = $_POST['message'];

    // Input sanitation omitted

    // Send the email
    mail("my.email@gmail.com", "Message from {$name} - {$email}", $message);
}

答案 1 :(得分:2)

不,纯JavaScript中不可能。