繁体   English   中英

通过JSON对象迭代JSP Servlet Ajax调用(MVC)

[英]JSP Servlet Ajax Call (MVC) Iterate through JSON Objects

$(document).ready(function() {       
        $.get("/myServlet", function(responseJson) {                 
            var $container = $("#mySpace");
            var x = "";

            $.each(responseJson, function(key,value) {  
                var object = JSON.stringify(value);

                x+= " . "+object+"<br>";
             });
            $container.append(x);


        });
    });

//----------------------------------------------- Servlet ---------- ----

   protected void doGet(HttpServletRequest request, HttpServletResponse 
 response) throws ServletException, IOException {

  ArrayList<Students> list = new ArrayList<>();

  Student s = new Student();
  s.setid(1);
  s.setName("john");
  s.setYear(5.5);

  Student s1 = new Student();
  s1.setid(2);
  s1.setName("alice");
  s1.setYear(5.5);

  Student s2 = new Student();
  s2.setid(3);
  s2.setName("nami");
  s2.setYear(3.5);

  list.add(s);
  list.add(s1);
  list.add(s2);

        String json = new Gson().toJson(list);
         response.setContentType("application/json");
        response.setCharacterEncoding("UTF-8");
        response.getWriter().write(json);

}

我在javascript中的x产生了这个。 即使当我尝试访问object [“ id”]例如x + =“。” + object [“ id”] +“
“;我无法。它说未定义。对此有任何建议吗?还是我应该使用在其中创建的学生模型?(不确定如何)

容器的输出:

{ “ID”:1, “名”: “约翰”, “年”:5.5}

{ “ID”:2, “名”: “爱丽丝”, “年”:5.5}

{ “ID”:3, “名”: “纳米”, “年”:3.5}

希望这会起作用。

$(document).ready(function() {          
        $.get("/myServlet", function(responseJson) {
        var $container = $("#mySpace");
        var x = "";
        var jsonData = JSON.parse(responseJson);
                $.each(jsonData, function(key,value) { 
                    x+= " . "+value.id+" "+value.name+" "+value.year+"<br>";
                 });
                 console.log(x);
                 $container.append(x);
          });
    });

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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