Ajax 返回 json

前端之家收集整理的这篇文章主要介绍了Ajax 返回 json前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

后台java代码

  1. public void doPost(HttpServletRequest request,HttpServletResponse response)
  2. throws ServletException,IOException {
  3.  
  4. response.setContentType("text/html;charset=utf-8");
  5. JSONObject json = null;
  6. PrintWriter out = response.getWriter();
  7. System.out.println("load in ....");
  8. // 初始化数据
  9. class Cat{
  10. Cat (String name,int height ) {
  11. this.height = height;
  12. this.name = name;
  13. }
  14. int height;
  15. String name;
  16. }
  17.  
  18. ArrayList<Cat> list = new ArrayList<Cat>();
  19. list.add(new Cat("Tom",20));
  20. list.add(new Cat("Abby",30));
  21. list.add(new Cat("Kitty",10));
  22. list.add(new Cat("Julie",40));
  23.  
  24. // 定义返回值的容器
  25. StringBuffer buffer = new StringBuffer();
  26. // 当json返回 对象时,外面必须加一对小括号
  27. buffer.append("({");
  28.  
  29. for(int i = 0; i < list.size(); i++){
  30. Map map = new HashedMap();
  31. map.put("name",list.get(i).name);
  32. map.put("height",list.get(i).height);
  33. json = JSONObject.fromObject(map);
  34. buffer.append(i);
  35. buffer.append(":");
  36. buffer.append(json.toString());
  37.  
  38. if(i != list.size()-1) {
  39. buffer.append(",");
  40. }
  41. }
  42.  
  43. buffer.append("})");
  44. out.print(buffer);
  45.  
  46. out.flush();
  47. out.close();
  48.  
  49. }

js脚本

  1. $(function() {
  2. $("#verify").click(function(){
  3. var userName = $("#userName").val();
  4. $.ajax({
  5. type: "post",url: "servlet/ResultJSON",async: true,data : "name=" + userName,dataType: "Text",success: function(data){
  6. alert(data);
  7. var objs = eval(data);
  8. try{
  9. for (var i = 0; i < 10; i++) {
  10. var o = objs[i];
  11. $("#result").append(o.name + "---" + o.height + "<br />");}
  12. }catch(e){
  13. alert("数据往下没有了");
  14. }
  15. }
  16. });
  17. });
  18. });

猜你在找的Ajax相关文章