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