为什么我一直在使用AJAX请求获取codeigniter“Access-Control-Allow-Origin不允许”错误

I have the following problem happening consistently on my code.

I have a data model with the following function:
data_model.php

public function testFunc(){
        return "string";
}

site.php (controller)

public function get_more_data(){
    $this->load->model('data_model');
    $data['test']=$this->data_model->testFunc();
    return $data;
}

home.php (view)

<html>
    <body>
        <button class="test">test</button>
    </body>
    <script>
        $('.test').click(function(){
        $id=1;
        $.ajax
        ({  
            url: '<?php echo site_url() ?>index/site/get_more_data',
            data: $id,
            type: 'post',
            success: function(result)
            {
                alert(result);
            }
        });
    });
</html>

However every time I click the button I always get this error:

XMLHttpRequest cannot load http://[::1]/codeignitor/index.phpindex/site/get_more_data. Origin http://localhost is not allowed by Access-Control-Allow-Origin.

What am I doing wrong or not understanding correctly here?

Thanks,

I use ajax in my CodeIgniter projects using the following procedure :
I send data to controllers using queries (like : xxxx.com?id=5)
I receive data using echo in the controller