AJAX脚本没有在codeigniter中返回成功

时间:2012-09-13 15:45:27

标签: php jquery ajax codeigniter

JS:

$(function() {
    load_custom_topics()
//    load_main()
});

function load_custom_topics(){
    $.ajax({
    type: "POST",
    async: false,
    url: 'http://rickymason.net/thebump/index.php/ajax/load_custom_topics',
    dataType: 'json', 
    data: { },
        success: function(page){
            alert(page);
        }
    });
    event.preventDefault()
}

load_custom_topics

public function load_custom_topics()
{
    $check = $this->page_model->check_active_topic();
    if ($check == FALSE) 
    {
            $page['content'] = 'TEST equals FALSE'; 
    } else {
            $page['content'] = 'TRUE'; 
    }
    echo json_encode($page);
}

转到页面index.php / ajax / load_custom_topics返回:

{"content":"TEST equals FALSE"}

警报未触发!知道为什么吗?

1 个答案:

答案 0 :(得分:1)

实际上,在检查对控制器的请求时,我发现你没有设置ajax调用所需的正确头文件(text / json)。

请参阅codeigniter的Output类。

使用

$this->output->set_content_type('application/json')->set_output(json_encode($page));

而不是

echo json_encode($page);

应该这样做。