1

Let's say .. I have the following script in my controller:

 $result= array("Name"=>Charlie Sheen, "Age"=>30); 
 echo josn_encode($result);

And in my view file I have the following java script. Now could you please tell me what exactly to write in the success function of the script below in order to get the "Name" and "Age" displayed in two different divs inside body tag? I have found some tutorials on this but all those are very confusing to me. Could you please kindly help?

Thanks in Advance :)

<script  type="text/javascript">
 $(function(){ // added

     $('a.read').click(function(){
            var a_href = $(this).attr('href'); 

     $.ajax({

     type: "POST",
     url: "<?php echo base_url(); ?>batch/get_info",
     data: "id="+a_href,
     success: function(server_response){
                                                  //What exactly to write here
                                         }                                      
                                            }); //$.ajax ends here                          
                                                return false    

    });//.click function ends here

  }); // function ends here                        

 </script>  

2 Answers 2

1

Make sure you spell you json_encode function correctly.

Your html should look like this:

<head>

<script  type="text/javascript">
$(function(){ // added

 $('a.read').click(function(){
     var a_href = $(this).attr('href'); 

     $.ajax({

        dataType : 'json', //You need to declare data type

        type: "POST",
        url: "<?php echo base_url(); ?>batch/get_info",
        data: "id="+a_href,
        success: function(server_response){
           $( '#name' ).text( server_response.Name );
           $( '#age' ).text( server_response.Age);
        }                                      
      }); //$.ajax ends here                          
      return false    

   });//.click function ends here

}); // function ends here                        

</script>  

</head>
<body>

   <div id='name'></div>
   <div id='age'></div>

</body>
Sign up to request clarification or add additional context in comments.

Comments

0

First of all, you should set the dataType. It should have the value 'json'. As for accessing it, you just access it as you would any other JavaScript object:

<script type="text/javascript">
$(function() {
     $('a.read').click(function() {
         var a_href = $(this).attr('href'); 

         $.ajax({
             type: "POST",
             url: "<?php echo base_url(); ?>batch/get_info",
             data: "id=" + a_href,
             dataType: 'json',
             success: function(result) {
                alert(result.Name); // Charlie Sheen 
             }                                      
         });

         return false;
    });
});
</script>

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.