将控制器JSON中的值传递给CodeIgniter中的Ajax视图


Pass a value from controller JSON to view Ajax in CodeIgniter

问题是我得到假的对话框,但查询运行良好,值成功添加到数据库中。它应该打印为真,但它给我的是假的。我通过Firebug也检查了res = 1的值,但我不知道其中有什么问题。

我的观点:

$.ajax({
    url: "<?php echo site_url('itemsController/additems'); ?>",
    type: 'POST',
    data: form_data,
    success: function(msg) {
        if(msg.res == 1)
        {
            alert(true);
        }
        else
        {
            alert(false);
        }
    }
});

控制器:

        $result = array();
        $this->load->model('itemsModel');
        $query = $this->itemsModel->addItemstoDB($data);
        if ($query){  //&& any other condition
            $result['res'] = 1;
        }
        else
        {
            $result['res'] = 0;
        }
        echo json_encode($result); //At the end of the function.
    }
}

尝试将dataType设置为json,以便从服务器发回的数据被解析为JSON。

$.ajax({
    url: "<?php echo site_url('itemsController/additems'); ?>",
    type: 'POST',
    data: form_data,
    dataType: 'json',
    success: function(msg) {
        if(msg.res == 1) {
            alert(true);
        }
        else
        {
            alert(false);
        }
    }
});

通知返回

    if ($query){
        $result['res'] = 1;
    }
    else 
    {
        $result['res'] = 0;
    }
    return json_encode($result);//at the end of the function.
}