【发布时间】:2014-03-11 20:25:22
【问题描述】:
我正在为表单使用验证插件。 我只想要一个没有刷新的联系表。我想这是可能的。
这是我的 Javascript:
$().ready(function() {
// validate the comment form when it is submitted.
$("#actualForm").validate({
focusInvalid: false,
onkeyup: true,
rules: {
// simple rule, converted to {required:true}
name: "required",
comment: "required",
email: {
required: true,
email: true
},
},
submitHandler: function(form) {
var name = $('input[name="name"]').val();
var email = $('input[name="email"]').val();
var comment = $('input[name="comment"]').val();
var params = {
"name": name,
"email": email,
"comment": comment,
};
console.log(data);debugger;
$.ajax({
url: 'email.php',
data: params,
type: 'POST',
dataType: json,
success: function (data) {
if (data.status) {
//Give success log to user
} else {
//Do something
}
}
});
}
这是我的 PHP:
<?php
$name = $_POST['name'];
$email = $_POST['email'];
$comment = $_POST['comment'];
$to = 'myemail';
$from = $email;
$subject = 'subject';
$body = "Hello Admin<br><br>
Name: <strong>$name</strong><br>
Email: $email<br>
Bericht: $comment<br>
";
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= "From: $from";
$ok = mail($to, $subject, $body, $headers);
if($ok)
echo '1';
else
echo '0';
?>
我也有一个 invalidHandler,但那东西正在工作,所以我想把它放在这里没用。
但是我现在被困了几个小时,我希望有人可以帮助我解决这个问题。
【问题讨论】:
-
您是否尝试过不使用 ajax 直接运行您的 php 脚本?
-
它的实际作用是什么?任何输出,我看到控制台应该记录一些东西?
-
@FredericNault 不,我还没有尝试过。 Aurel300 它刷新了我的页面。它不发送任何电子邮件。该日志输出我的数据。
-
旁注:您错过了以 HTML
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";@Drogon 发送电子邮件的重要代码行 -
@FredericNault,我已经运行了没有 ajax 的电子邮件。它仅发送一封电子邮件: 姓名:
电子邮件:
Bericht:
标签: javascript php jquery ajax email