json格式数据返回到页面 并js解析

1. 效果

2.前端  ajax请求

//10. 后台返回 更   复杂的 json格式数据  前段解析  

//{"status": "101","msg": "操作成功","data": {"totalSize": "10","totalPage": "4","pageSize": "3","currentPage": "2","beanList": [{"name": "John","age": "25"}, {"name": "luck","age": "20"}]}}

$("#responmoreComplexJsonid").click(function(){

$.ajax({

url:'${pageContext.request.contextPath }/responMoreComplexJson.action',

type:'post',

success:function(data){

var obj = JSON.parse(data); //由JSON字符串转换为JSON对象

var needobj =  obj.data.beanList;

for(var i = 0; i < needobj.length; i++){

 alert(needobj[i].name + " " + needobj[i].age);

}

},'json')

});

3. 后台    ajax请求 不能返回 只能以流的形式返回

@RequestMapping("/responMoreComplexJson.action")
    public  void   responMoreComplexJson(HttpServletResponse response ){
        try {
            StringBuffer sb =  new StringBuffer();
            sb.append("{");
            sb.append("\"status\"");
            sb.append(":");
            sb.append("\"101\"");
            sb.append(",");
            sb.append("\"msg\"");
            sb.append(":");
            sb.append("\"操作成功\"");
            sb.append(",");
            sb.append("\"data\"");
            sb.append(":");
            sb.append("{");
            sb.append("\"totalSize\":");
            sb.append("\"10\"");
            sb.append(",");
            sb.append("\"totalPage\":");
            sb.append("\"4\"");
            sb.append(",");
            sb.append("\"pageSize\": \"3\",\"currentPage\": \"2\",");
            sb.append("\"beanList\":");
            sb.append("[{\"name\": \"John\",\"age\": \"25\"}, {\"name\": \"luck\",\"age\": \"20\"}]");
            sb.append("}}");
            //输出流 对象
            PrintWriter out = response.getWriter();

            out.write(sb.toString());
        } catch (IOException e) {
            e.printStackTrace();
        }
        
    }

猜你喜欢

转载自my.oschina.net/springMVCAndspring/blog/1793381