There are situations where a server returns a JSON string in response to your request. The jQuery utility function getJSON() parses the returned JSON string and makes it available to a callback function, which is the first parameter of the function.
Syntax
Here is the simple syntax for the getJSON() method:
[selector].getJSON(URL, [data], [callback]); |
Here is the description of all the parameters:
- URL: The URL of the server-side resource contacted via the GET method.
- data: An object whose properties serve as the name/value pairs used to construct a query string to be appended to the URL, or a preformatted and encoded query string.
- callback: A function invoked when the request completes. The data value resulting from digesting the response body as a JSON string is passed as the first parameter to this callback, and the status as the second.
Example
Consider the following HTML file with a small jQuery code:
<html> <head> <title>jQuery getJSON Example</title> <script type="text/javascript" src="/jquery/jquery-1.3.2.min.js"></script> <script type="text/javascript"> $(document).ready(function() { $("#driver").click(function(event){ $.getJSON('/jquery/result.json', function(jd) { $('#stage').html('<p> Name: ' + jd.name + '</p>'); $('#stage').append('<p>Age : ' + jd.age + '</p>'); $('#stage').append('<p> Sex: ' + jd.sex + '</p>'); }); }); }); </script> </head> <body> <p>Click on the button to load result.json file:</p> <div id="stage" style="background-color:blue;"> STAGE </div> <input type="button" id="driver" value="Load Data" /> </body> </html> |
Here, the jQuery utility method getJSON() initiates an Ajax request to the specified URL /jquery/result.json. After loading this file, all the content is passed to the callback function, which finally populates the content inside the <div> tagged with ID stage.
Assuming our /jquery/result.json
file contains the following JSON-formatted content:
{ "name": "Zara Ali", "age": "67", "sex": "female" } |
When you click the button, the result.json file gets loaded, and the data is displayed inside the stage div.
Comments
Post a Comment