Ajax函数:我可以在Ajax中获取ID,但无法发送给控制器。控制器正在调用,但无法在控制器中获取数据。
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table class="calendar">
<tbody></tbody>
</table>
控制器功能:
function select_report()
{
var re_id = $('#report_id').val();
// ajax adding data to database
alert(re_id);
$.ajax({
url : "<?php echo site_url('Homepage/category/');?>",
type: "POST",
data: {'re_id':re_id},
success: function(data)
{
window.location.href = "<?php echo site_url('Homepage/category/'); ?>";
},
error: function (jqXHR, textStatus, errorThrown)
{
alert('Error');
}
});
}
答案 0 :(得分:0)
尝试检查。
function select_report()
{
var re_id = $('#report_id').val();
$.ajax({
url: '<?php echo base_url();?>Homepage/category/',
async: false,
type: 'POST',
data: {re_id : re_id},
dataType: 'html',
success: function(data) {
console.log(data);
}
});
}
希望这对您有用。
答案 1 :(得分:0)
我们无法在ajax请求中加载视图。为此,我们使用了另一种方法
function select_report()
{
var re_id = $('#report_id').val();
// ajax adding data to database
alert(re_id);
$.ajax({
url : "<?php echo site_url('homepage/category/');?>",
type: "POST",
data: {'re_id':re_id},
dataType: 'json',
success: function(data)
{
console.log(data);
if(data==true){
window.location.href = "<?php echo site_url('homepage/category_demo/'); ?>"+re_id;
}else{
alert('Error');
}
},
error: function (jqXHR, textStatus, errorThrown)
{
alert('Error');
}
});
}
在控制器中
public function category()
{
$this->load->library('session');
$this->load->helper('url');
$re_id=$this->input->post('re_id');
$report=$this->main_model->select_report($re_id);
if(count($report)>0){
echo json_encode(true);
}else{
echo json_encode(false);
}
}
public function category_demo($re_id){
$data['report']=$this->main_model->select_report($re_id);
$this->load->view('templates/header');
$this->load->view('category.php',$data);
$this->load->view('templates/footer');
}
答案 2 :(得分:0)
如果您使用的是Chrome浏览器,请检查网络标签,并检查发送到服务器的标题数据。是否具有要发送到控制器的数据,并检查该URL的响应是什么。请同时检查响应 HTTP状态。
然后在服务器端检查,确保URL可以进入您的控制器。您可以在方法代码中死掉(“测试”),以确保该请求与您的代码保持联系。
我认为问题出在您的网址上。