响应没有进入codeigniter ajax函数

时间:2014-03-14 06:26:04

标签: jquery ajax codeigniter response

我的控制器功能就像这样

function check_user() {
        $user_name = $this->input->post('user_name');
        $res_user = $this->user_model->is_unique_user($user_name);
}

我有像下面的用户ajax代码

success: function(response){
                                if(response.data == 'exist'){
                                    $("#user_name").after('<p class="help-block">Username alredy exist</p>');
                                }
                                                                    else{
                                                                            $("#user_name").after('<p class="help-block">Username available</p>');
                                } 

这是我的模型函数

function is_unique_user($user_name)
{
    $this->db->select('*');
    $this->db->where("user_name = '$user_name'");
    $result = $this->db->get('tb_user');

    if($result->num_rows())
    {
        return $date = 'exist';
    }
    else
    {
        return $data = 'available';
    }
}

现在问题是查询工作正常。但没有错误信息。我检查了使用fire-bug控制台。它显示没有响应的错误。这有什么不对?

2 个答案:

答案 0 :(得分:2)

请使用die停止代码并返回回复。

function check_user() {
        $user_name = $this->input->post('user_name');
       $res_user = $this->user_model->is_unique_user($user_name);
       die($res_user);
}

ajax成功函数将response.data更改为response

success: function(response){
        if(response == 'exist'){
             $("#user_name").after('<p class="help-block">Username alredy exist</p>');
         }else{
             $("#user_name").after('<p class="help-block">Username available</p>');
       } 

答案 1 :(得分:1)

请查看此代码,使用echo获取回复

function check_user() {
        $user_name = $this->input->post('user_name');
       echo   $res_user = $this->user_model->is_unique_user($user_name);
}