繁体   English   中英

未定义的索引Jquery Ajax POST

[英]Undefined index Jquery Ajax POST

我有这个小而烦人的问题。 我真的不喜欢网络的东西。 我尝试使用ajax jquery请求我的php文件。 当我想检索从ajax发送的数据时,它返回未定义的索引。 我不知道是什么问题,它让我花了很多时间来解决它。 谢谢

下面是我的ajax代码

var at=this.name.substring(this.name.length,7);
var value_header = $("#key"+at).val();
var jsObj = { new_value:value_header, id:at, data:'header'};
console.log(JSON.stringify(jsObj));
$.ajax({
  type: 'POST',
  headers: 'application/urlformencoded',
  url: 'admin_crud.php',
  data: jsObj,
  contentType: "application/json; charset=utf-8",
  dataType: "json",
  success: function(data){
  console.log("Sukses");
}

当我在我的php文件中调用下面的代码时,结果是'Undefined index:data'

echo $_POST['data'];

//编辑所以,当我尝试var_dump($ _ POST);时,结果是array(0){}。 我的错误在哪里? 我以为我发了正确的//编辑

正如我上面提到的,我希望它运行完美而没有错误。 谢谢

删除headers ,将datatype更改为textcatch errors ajax call catch errors

$.ajax({
    type: "POST",
    dataType: "text",
    data: jsObj,
    url: "admin_crud.php",

    success: function (result) {
        console.log("success", result);
    },

    error: function (e) {
        console.log("Unsuccessful:", e);
    }
});

我在@Marco Sanchez旁边还有另一个解决方案,我不知道它总是有效,但在我的情况下,它有效:

$.ajax({
  type: 'POST',
  url: 'admin_crud.php',
  headers: "Content-type: application/x-www-form-urlencoded"
  data: "new_value="+value_header+"&id="+at+"&data=header",
  success: function(data){
     console.log("Sukses");
     console.log(data);
  }
});

暂无
暂无

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

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