我有以下ajax代码通过post将数据发送到php:
checked_id = 10;
$.ajax({
url: "/delete_document",
type: "POST",
data: {id:checked_id}, // a
success: function(data, textStatus, jqXHR){
alert(data);
location.href='/delete_document';
},
error: function (jqXHR, textStatus, errorThrown){
//alert('Error!')
}
});
它成功地准备了数据,并提醒正确的值(10)。
然后我应该在php文件中获取这个值:
$selected_id = $_POST['id'];
var_dump($selected_id);
但是var_dump给了我string(0)"。
我知道,当代码不起作用时,总是我做错了。但我真的看不出这里的错误。
问题是,在该代码完成后,您最终看到的不是POST ajax调用的结果,而是在行中重定向的结果
location.href='/delete_document';
这对/delete_document
URL进行了第二次调用,这是一次简单的GET请求,没有您期望的POST数据。
编辑。
您希望使用POST数据移动到/delete_document
,而不是进行ajax调用并重定向到该页面。重定向不能做到这一点,所以你应该制作一个表单并用JavaScript提交。
以下是您尝试做什么的示例:JavaScript发布请求类似于表单提交