Ajax response inside a div

ajax, jquery

Solution

The problem is that you have mixed arguments of Ajax `success` handler. First goes `data` which your script gives back, then goes `textStatus`. Theoretically it can be "timeout", "error", "notmodified", "success" or "parsererror". However, in `success` textStatus will always be successful. But if you need to add `alert` on error you can add `error` handler. And yes, change selector in $("#result") to class. So corrected code may look like this:

$.ajax({
    type: "POST",
    url: "<?php echo base_url(); ?>contents/hello",
    data: "id=" + a_href,
    success: function(data, textStatus) {
        $(".result").html(data);    
    },
    error: function() {
        alert('Not OKay');
    }
});​

Problem

I am trying to show the value of ajax response inside a div and for that I have the following code in my view file. ``` <script type="text/javascript" src="MY LINK TO JQUERY"></script> <script type="text/javascript"> $(function(){ // added $('a.vote').click(function(){ var a_href = $(this).attr('href'); $.ajax({ type: "POST", url: "<?php echo base_url(); ?>contents/hello", data: "id="+a_href, success: function(server_response){ if(server_response == 'success'){ $("#result").html(server_response); } else{ alert('Not OKay'); } } }); //$.ajax ends here return false });//.click function ends here }); // function ends here </script> <a href="1" title="vote" class="vote" >Up Vote</a> <br> <div class="result"></div> ``` my Controller (to which the ajax is sending the value): ``` function hello() { $id=$this->input->post('id'); echo $id; } ``` Now what I am trying achieve is get the server_response value (the value that is being sent from the controller) in side `<div class="result"></div>` in my view file. I have tried the following code but its not showing the value inside the div. Could you please tell me where the problem is?

Original source