未定义索引Jquery Ajax POST

时间:2019-06-10 15:38:44

标签: javascript php jquery ajax

我有一个小而烦人的问题。我真的不是平常的网络事物。我尝试使用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文件中调用以下代码时,结果为“未定义索引:数据”

echo $_POST['data'];

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

如上所述,我希望它运行完美无误。谢谢

2 个答案:

答案 0 :(得分:0)

删除public class ProductOrderSerializer extends SensitiveDataSerializer<ProductOrder> { public POProductOrderSerializer(BeanSerializerBase src) { super(src, (productOrder -> { return true; // put your permission checking code here }), "****"); } } ,在headers中将datatype更改为textcatch errors

ajax call

答案 1 :(得分:0)

除了@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);
  }
});