简体   繁体   中英

JQUERY .each how to reach array within object?

I have JSON data which I get with an ajax function, I loop through this data using a each function like this :

                    $.each(data, function (index, trip) {
                    // trip contains data
                    console.log(trip);

                    content += '<article class="tripPreview">';
                    content += '<span class="tripTitle">'+trip.title+ '</span>';
                    content += '<div class="tripOverlay">'+trip.description+ '</div>';
                    content += '<img src="public/uploads/tripphoto/'+ trip.id +'/'+trip.tripphotos.filename+'">';   
                    content += '</article>';        

                });

How do I reach tripphotos > filename > thumb > url ?

JSON:

{"created_at":"2012-12-06T13:02:03Z","description":"test","id":11,"province":"Friesland","range_high":null,"range_low":null,"start_city":"Leeuwarden","title":"test","updated_at":"2012-12-06T13:02:06Z","user_id":1,"views":1,"categories":[{"ar_association_key_name":"4","created_at":"2012-12-04T13:12:43Z","id":2,"name":"Urban","updated_at":"2012-12-04T13:12:43Z"}],"tripphotos":[{"created_at":"2012-12-06T13:02:05Z","filename":{"url":"/uploads/tripphoto/filename/2/1280x1024-colour-wood-flip.jpg","thumb":{"url":"/uploads/tripphoto/filename/2/thumb_1280x1024-colour-wood-flip.jpg"}},"id":2,"trip_id":11,"updated_at":"2012-12-06T13:02:05Z"}]}

From your JSON, it looks like tripphotos is an array, so you'll need another each :

$.each(data, function (index, trip) {
   ...
   $.each(trip.tripphotos,function(index2,tripphoto){
      console.log(tripphoto.filename.thumb.url);
   });
});

Unless you know there will only ever be one (or, you're after just the first):

$.each(data, function (index, trip) {
    ...
    console.log(trip.tripphotos[0].filename.thumb.url);

});

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM