Jquery ajax在codeigniter中不起作用

Jquery ajax在codeigniter中不起作用,jquery,ajax,codeigniter,Jquery,Ajax,Codeigniter,我试图使用ajax jquery函数发送post请求,并将一些数据异步返回到窗口中。这是我到目前为止所拥有的。它似乎不起作用 他认为: $.ajax({ url: '/dashboard/presskits/media/get_video_link/', type: 'POST', dataType: 'json', data: { encoded_link : encoded_link }, c

我试图使用ajax jquery函数发送post请求,并将一些数据异步返回到窗口中。这是我到目前为止所拥有的。它似乎不起作用

他认为:

$.ajax({
          url: '/dashboard/presskits/media/get_video_link/',
          type: 'POST',
          dataType: 'json',
          data: { encoded_link : encoded_link },
          cache: false,
          success: function(output_string){
            // $('#edit_video_info').append(output_string);
            alert(output_string.url_data);
          } // End of success function of ajax form
          }); // End of ajax call
}); 
在控制器中:

 public function get_video_link()
{
    $temp_url = $this->input->post('encoded_link');
    $output_string = json_encode(array('url_data' => $temp_url));
            return $output_string;
    } 

Print或echo不返回JSON,您也应该包含success

print json_encode(array('Status' =>'Success', 'url_data' => $temp_url));

只需使用
echo
print
更改您的报税表。首先,您是否启用了URL帮助器?我认为您的URL字段不正确。在配置中启用URL帮助器,并像这样回显基本URL

url: "<?php echo base_url(); ?>dashboard/presskits/media/get_video_link/"
url:“仪表板/presskits/media/get\u video\u link/”
另外,我建议使用chrome或firefox开发工具来检查请求中的HTTP响应头。在Chrome上,只需右键单击->网络,然后发出ajax请求


其次,您应该在控制器中响应响应,而不是返回响应。在较低级别,当函数返回一个值时,它将该值存储在寄存器(内存)中,所有这些都发生在堆栈中。换句话说,它不是一个I/O操作。Echo将直接将json文本输出到浏览器(这是ajax调用所期望的)。

您正在使用json,因此需要返回字符串的json编码
Echo json\u encode($output\u string)