James Bennet
James Bennet

Reputation: 603

Parse JSON response from Servlet

Ok, Ive got a Java Servlet returning some JSON (In Application/JSON format). To do this, im using the GSON libary.

The Servlets GET method takes one paramater, ID. The servlet seems to be working, For example,chrome shows my AJAX GET request returning the following when the [Booking]ID paramater sent is 1.

    0: {WidgetID:46, BookingID:1, X:393, Y:50, Content:Test1}
    1: {WidgetID:47, BookingID:1, X:337, Y:251, Content:Test2}
    2: {WidgetID:48, BookingID:1, X:97, Y:198, Content:Test3}

The problem I have is with parsing this response. Here is my JS code:

    loadPositions() {
    var BookingID = 
    if (BookingID != null && BookingID != "null")
    {
    var data = {"id" : BookingID};
    $.getJSON("Widget", data, function(data) {
    // Successfully got all this bookings widgets as JSON, TODO: Parse this!
    });
    }
    } 

What should I put in the "TODO: Parse this!" section? I want to foreach over all the elements, and grab their data. I really suck at this JQuery stuff.

Upvotes: 1

Views: 1710

Answers (3)

Andy Cobley
Andy Cobley

Reputation: 1

Take a look at

https://github.com/acobley/jBoggyAppy/blob/HectorV2-Cassandra-0.7.0/WebContent/Scripts/index.js

the ShowScrollingTags function.

Upvotes: 0

ncremins
ncremins

Reputation: 9200

Have a look at jQuery .each()

http://api.jquery.com/jQuery.each/

and for a good example of what you want to do...

http://api.jquery.com/jQuery.getJSON/

$.getJSON('ajax/test.json', function(data) {
  var items = [];

  $.each(data, function(key, val) {
    items.push('<li id="' + key + '">' + val + '</li>');
  });

  $('<ul/>', {
    'class': 'my-new-list',
    html: items.join('')
  }).appendTo('body');
});

Upvotes: 1

linuxeasy
linuxeasy

Reputation: 6499

In the todo section, you should do the following to loop through all the arrays:

$.each(data, function(index,value){
    // here index=0 & value.WidgetID=46, value.BookingId = 1, use it as you would like to.

})

Upvotes: 4

Related Questions