繁体   English   中英

为什么当我添加这个脚本时 POST 方法不起作用?

[英]Why POST method doesn't work when I add this script?

我正在使用 PHP Mailer,当我将以下脚本添加到我的 HTML 代码时,$_POST 方法不会从输入字段中检索任何值。 当我删除时,它可以正常工作。

<script>
$(document.forms[0]).submit(function(event) {
  event.preventDefault();
  $.get('mail.php', function(data) {
  document.getElementById("Success").style.visibility = 'visible';
  });
});
</script>

我只是用它来让用户在提交后保持在同一页面上,然后显示成功消息。

在 PHP 代码的最后,我使用了这个:

$mail->Body= $body;

if(!$mail ->send()){
    echo "Error";
    echo $mail ->ErrorInfo;
} else {
    http_response_code(200);
}

?>

您要做的第一件事是阻止浏览器发出 POST 请求,如果您不包含该脚本,它会发出该请求。

 event.preventDefault();

您要做的第二件事是发出(ajax)GET 请求(不能包含您要读取的正文)。

 $.get('mail.php'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM