如何在jQuery中检索从servlet发送的项的JSON数组

时间:2013-02-09 09:50:23

标签: javascript jquery json

我正在尝试检索数据库中的所有图像并在网页中显示。 servlet发送一个项目数组。当我运行我的servlet程序时,它会显示

{"success":true,"imageInfo":[]}

但是在网页中,jQuery返回undefined

我是jQuery的新手 - 请任何人帮我解决这个问题。

Javascript:

$(window).load(function() 
            {
            $.ajax({
               type: "GET",
                url: "RetriveIm",
                dataType: "json",
                success: function( data, textStatus, jqXHR) 
                {
                    if(data.success)  
                      {

                        alert(console.log(data.imageInfo.name));
                        var items = [];
                        $.each(data, function(i, item) 
                        {
                          items.push('<li><a href="#"><img src=data:image/png;base64,'+ item.thumbarray +' data-large=data:image/png;base64,' + item.imageInfo.fullarray + ' data-description=' + item.imageInfo.disc + ' alt=' + item.imageInfo.name + ' data-id='+ item.imageInfo.imageid +'/></a></li>');  // close each()
                          $('ul.es-carousel').append( items.join('') );
                         });
                       };
                  },
             error: function(jqXHR, textStatus, errorThrown)
              {
                 alert("error");
                 console.log("Something really bad happened " + textStatus);
              },
              });       
             });

我的服务器端程序在this问题。

我没有数据中的错误请帮助我.....谢谢...

1 个答案:

答案 0 :(得分:1)

$.getJSON("url",function(json){
         console.log(json)
         //your set of images check object structure
         $.each(json.imageInfo, function(i, item) {//... if i understood well the json you are sending
         });

足以满足您的需求。

&安培;确保在回复您的回复之前发送header('Content-Type: application/json');

您还需要将$('ul.es-carousel').append( items.join('') );移出$ .each