java返回前台一个map类型数据大致为:
    {content=123654,username=hulai,imagePath=/admin/image/h.jpg}
我想把它转成js的json类型({"content":"123654","username":"hulai"...}),请问怎么转?

解决方案 »

  1.   

    首先用逗号分隔成数组 再分别用等号分隔 然后你想怎么干就怎么干
    其实建议,你干脆让java后台给你返回json
      

  2.   

    后台直接用JSONUtil的方法就调用下就能转成json;
    前台转的话先拆分然后再字符串拼接
      

  3.   

    前台只能通过截取字符串“=”的方法,这样很麻烦,建议在后台返回数据的时候先转换为json格式
      

  4.   

    不管是用eval() 还是$.parseJSON(),前提都是返回的数据是json格式,所以只能在返回数据的时候格式化为json格式
      

  5.   


    推荐这种做法, java中也有直接将集合转为json字符串的插件, 你还是处理好了再在前台中直接用吧。 原料好, 菜才好吃。
      

  6.   

    先使用split方法将数据分解。然后再使用一个循环。
      

  7.   


    String.prototype.replaceAll=function(s1,s2)
    {
    var demo=this;
    while(demo.indexOf(s1)!=-1)
    demo=demo.replace(s1,s2);
    return demo;
    };
                    var str = "{content=123654,username=hulai,imagePath=/admin/image/h.jpg}";
                    str = str.replaceAll("=",":");
                    var strjson = eval("(" + str + ")");
      

  8.   

    都是在java直接将map转成json返回,不给前端添乱,JSONObject.fromObj(map);
      

  9.   

    楼主的字符串不能转成json。
     {content=123654,username=hulai,imagePath=/admin/image/h.jpg}
    这个字符串本身就不满足json字符串的格式。
    楼主的意思可能是下面的这个字符串吧
     {content:123654,username:"hulai",imagePath:"/admin/image/h.jpg"}如果是这样的话可以用eval('('+json+')')