AJAX PHP $ _POST无效

时间:2017-11-08 15:44:02

标签: php jquery ajax post

我有一个相当简单的问题,但我只是无法找出我的帖子无法正常工作的原因。我过去做了很多,这就是为什么我不知道错误所在。请帮帮我,这是我的AJAX代码:

$(function() {
  $("#btnSubmit").click(function(event) {
    event.preventDefault();
    var formData = $("formCI").serialize();   
    $.ajax({
      type     : "POST",
      url      : "formularioServer.php", 
      data     : formData,
      datatype : "json",
      async    : false
    })
    .done(function(data) {
      if(data != "success"){
        console.log(data);
      } else {
        alert("A ticket has been sent with your incident information to the CI-Hotline inbox");
        window.location = "formulario.php";
        console.log(data);
      }
    }); 
  });
});

我的部分HTML:<form name="formCI" id="formCI" action="formularioServer.php" method="POST" enctype="multipart/form-data" accept-charset="utf-8">

<button type="submit" name="btSubmit" id="btnSubmit" class="btn btn-default">


在服务器端,POST总是出现错误消息:

<?php
if(!empty($_POST)) {
    echo "success";
} else {
    echo "failed";
}
?>

1 个答案:

答案 0 :(得分:2)

var formData = $("formCI").serialize(); 

这应该是

var formData = $("#formCI").serialize();

通过其ID获取正确的表单。

此外,serialize不会将数据转换为json,它只是将数据编码为提交字符串,因此您必须从AJAX调用中删除datatype : "json"行。