前端jQuery做AJAX POST提交,但是后台收不到数据
前端代码:
var arrselections = $('#studentTable').bootstrapTable('getSelections');
var data=JSON.stringify(arrselections);
bootbox.confirm({
size: 'small',
title: '操作提示',
message: '确认要删除选中的数据吗?',
buttons: {
confirm: {
label: '确认',
className: 'btn-success'
},
cancel: {
label: '取消',
className: 'btn-default'
}
},
callback: function (result) {
if (!result) {
return;
}
$.ajax({
url: 'delStudent',
type: 'POST',
data: JSON.stringify(arrselections),
dataType:'json',
});
$.post('delStudent',data);
}
});
这里的.bootstrapTable('getSelections')
是用了bootstrap-table插件,获取了一行的数据,然后JSON.stringify(arrselections)
获取JS的Object数据,然后传给后台。前台获取数据看着没什么问题。
后台代码:
public function delStudent()
{
$post = I('post.');
dump($post);
...
}
这里后台用的是TP3.2.3,但是用dump()
函数获取到的数据显示array{}
?获取不到数据……
目前不清楚问题出在哪里?
===================================================================
后台数据的反馈,可以看到前台数据是获取到了,然后ajax传到后台就收不到……JSON.stringify()这个方法有问题吗?感觉转出来的JSON数据是不是没法被后台所获取到?
首先先确认是否发送了请求。以及请求状态 查看一下header的状态 看看传的是什么
难道不应该先打开控制台(贴出控制台信息)查看请求的具体信息吗?
目测你请求的URL有问题... 只能目测了~~~
打开控制台看看啊 在看看Network
怕是url前少个'/'
打开控制器看看,js有没有报错,不行就console.log看看后台究竟有没有返回,用postman看看,那个接口到底能不能返回数据,一个一个排查吧,我觉得你的后台直接var_dump ,不是echo,没问题么