如图,在JS中取后台传来的model对象,只能获得com开头的地址一样的字符串,无法获得对象,也没法转为json对象,但是单独的取其中的值确实可以取出来的。为什么会这样子啊。求大神

解决方案 »

  1.   

    个人的理解是,SSM在服务器端渲染,它的model(数据)和页面是在服务器端完成结合的,数据只能在服务器端使用。你页面的js可以在服务器端得到具体的值(我js学得不多,用java来说就是基本数据类型),如果是引用类型(就是对象),它的值就是对象的地址,你在服务器端的时候可以通过${post.type},post的地址取到type的值,但是一传到浏览器端,post的值还是那个对象的地址,但是对象已经不在了(在服务器端),所以前端无法取到具体的值。
      

  2.   

    java对象传递到js里面不能直接传递对象哦,需要使用json传输。
    1.先把model转换成json格式的(JSONObject.fromObject()),js里面就能获取到一个字符串,
    2.然后js里面有个eval()函数可以解析这个json字符串的,把他转换成一个js对象。
    3.然后你就可以拿到对象里面所有的属性值了