java - 碰到一个ajax问题,我通过ajax方法执行后台方法,(在后台有值,还是JSON类型)在前台貌似获取的是Object类型,
问题描述
通过ajax方法,在后台进行业余逻辑处理之后返回JSON数据,在前台获取到的是Object类型,想问问是什么情况。
ajax方法:
$.ajax({type:'post',url:'user/ReturUser',dataType:'json',data:{'id':city},success:function(data){alert(data); //输出的是 Object:Object});
后台:
@ResponseBody@RequestMapping('/ReturUser')public Object ReturUser(Model model){ userss=(Users)request.getSession().getAttribute('users'); System.out.println(JSON.toJSONString(userss)); //有值有输出 return JSON.toJSONString(userss);}
自己能力有限,找人帮忙解开疑惑
问题解答
回答1:返回的是个对象啊alert(data.balance)
JSON.stringify(data);回答3:
不要直接alert 还需进行json解析
回答4:你alert出来当然是个object啦_(:з」∠)_,要不你把它转成json string再alert一下看看是不是成功获取数据
回答5:$.ajax({ type:'post', url:'user/ReturUser', dataType:'json', data:{'id':city}, success:function(data){var val = JSON.parse(data);console.log(val.calls); }});
你在后台这样写就好了,前台直接得到User对象了
@ResponseBody@RequestMapping(value='/ReturUser',method = RequestMethod.GET,produces='application/json')public Users ReturUser(Model model){ userss=(Users)request.getSession().getAttribute('users'); return userss;}回答6:
这个是对的啊, 你可以直接使用,建议使用 console.log(data) 打印;然后你要使用具体的某个字段直接用data.calls就可以得到陈小姐了
回答7:传过来的是个对象。可以浏览器F12调试下,然后断点打在那个JS那里,可以看下这里面的值。
