+1  A: 

Are using using compression? If you are try to turn it off from CodeIgniter config.php

EDIT:

Option 1: you could put check from your method if you are receiving an ajax call. try creating this helper:

<?php  if (!defined('BASEPATH')) exit('No direct script access allowed');

function is_ajax()
{
    return isset($_SERVER['HTTP_X_REQUESTED_WITH']) && $_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest';
}

?>

Then try doing this in your method:

if (is_ajax())
{
    // do your thing
}
else
{
    $this->load->view('your_view');
}

This hopefully will solve this...

Option 2.

You could just echo and html string e.g. 'your data' and not load view

Thorpe Obazee
No compression is switched off.
Ben
can you update your question about what other content is being 'seen' with your JSON?
Thorpe Obazee
I have updated my question. As state above the extra content is all of the page above the div I am trying to update.
Ben
You're loading your view too... I'll edit my answer.
Thorpe Obazee
I just implemented what you suggested and i am still having the same result as before. Even if I simply echo a string inside of my controller function if is_ajax() is true I still get the header of the page also.
Ben
I see you already got your answer in the CI forums :)
Thorpe Obazee
A: 

well now i feel stupid, The code been shown along with the response were views that were been loaded in the parent class.

My bad.

Thanks for all the help and the is_ajax() function is definitely a help.

Regards Ben

Ben