引用一下JSON2.js 网上可以下到var JsonObject = JSON.parse(jsonString); 这样可以转换为json对象然后就可以用了。
详细用法请参考http://www.jb51.net/article/22588.htm

解决方案 »

  1.   

    var dataObj=eval("("+json字符串+")");
      

  2.   

    JSONArray.fromObject(list).toString();
      

  3.   

    var json = eval('(+json字符串+)')
      

  4.   

    $(document).ready(function(){
    $.get("cyjsonAction?act=inittitle",null,function(str){
    alert(str);
    var data = eval("(" + str + ")");
    var json=data.newName;
    for (x in json) {
    alert(json[x].Title.id);
     
    }

    });});
      

  5.   

    json to object 你懂得
      

  6.   

    var json = $.parseJSON(returnValue);
      

  7.   

    怎么取出来  var data = eval("(" + str + ")");
    var json=data.newName;
    for (x in json){
    alert(json[x].toSource().Title.id);
    }
    我这样取不了值
      

  8.   

    你这到底是说在是js里面解析json还在后台解析json哦如果是在js里面,
    json字符串,最后加上  trim(json字符串),去掉后台传过来时,前台的空格
    直接用 var jsonObject = eval('('+ json字符串+')');
    然后通过 jsonObject.xxx即可得到你需要的值如果是在后台的话,可以用JSONObject.from(xxx),解析成java对象,如果用spring mvc直接或许即可
      

  9.   

    for (var i=0;i< size;i++){
       alert(json[i].xxx);}
      

  10.   

    eval 是转化字符转的,你你把json对象转化成字符串你怎么eval
      

  11.   

    $(document).ready(function(){
    $.get("cyjsonAction?act=inittitle",null,function(str){
    alert(str);
    var data = eval("(" + str + ")");
    var json=data.newName;
    for (x in json){
           var r=  json[x];
    alert(r);
    }

    });});
      

  12.   

     前台解析json,用eval(json字符串),这里的字符串一定要是json比较标准的格式(不是json字符串就是json数组),但我观楼主上面的字符串格式,好像不是json格式啊。
      

  13.   

    你这个不是字符串数据嘛,
    如果是字符串可以像这样解析
    var a='{"rows":[{"id":1,"name":"32"}],total:23}';
    alert(a);
    var obj = eval('('+a+')');
    alert(obj.rows[0].id);如果已经是json对象或数组对象,可以通过下面这个把它转换成json字符串
    JSON.stringify(变量);
      

  14.   


    var jsonstring = JSON.stringify(变量);
    alert(jsonstring);
      

  15.   

    {"id": 1, "name": "自动注射器","title_id": 2}这里面的数据是想要的结果吧。如果你现在的数据是字符串的话,比如定义为变量datastr,那么先转成json对象:  var data = eval('('+datastr+')');
    然后遍历newName这个key,这样写:
    $.each(data.newName,function(i,news){
        $.each(news,function(in,new){
             $.each(new,function(index,detail){//这个集合是最终的子节点集
                   var id = detail.id;
                   var name = detail.name;
                   var title_id = detail.title_id;
             });
        });
    });
      

  16.   

    $(document).ready(function(){
    $.get("cyjsonAction?act=inittitle",null,function(str){
    alert(str);
    var data = eval("(" + str + ")");
    var json=data.newName;
    for (x in json){
           var r=  json[x];
    var  st=eval("(" + r.toSource().toString()+ ")");
        for(j in st){
         alert(j.toString().substring(j.toString().indexOf("id=",0)+3,j.toString().indexOf(",",0)));
         alert(j.toString().substring(j.toString().indexOf("title=",0)+6,j.toString().indexOf("]",0)));
        
         var jsonstring = JSON.stringify(st[j]);
         for(k in jsonstring){
         //alert(jsonstring[k].name);
         }
        }
    }
    $.each(data.newName,function(i,news){
        $.each(news,function(in,new){
             $.each(new,function(index,detail){//这个集合是最终的子节点集
                   var id = detail.id;
                   var name = detail.name;
                   var title_id = detail.title_id;
             });
        });
    });

    });});
    你给的方法使用不了
      

  17.   

    参考这个,如果不是你想要的结果,就算了<script>
     $(function(){
    var str = "{'newName':[{'Title [id=1, title=主页]':[]},{'Title [id=2, title=医疗产品]':[{'id':1,'name':'自动注射器','title_id':2},{'id':2,'name':'血压器','title_id':2},{'id':3,'name':'血糖仪','title_id':2}]},{'Title [id=3, title=智能家居]':[{'id':4,'name':'智能窗台','title_id':3},{'id':5,'name':'智能门','title_id':3},{'id':6,'name':'智能电灯','title_id':3},{'id':7,'name':'智能沙发','title_id':3}]},{'Title [id=4, title=技术支持]':[]},{'Title [id=5, title=公司简介]':[]}]}";

    var data = eval("("+str+")");
    var result = "";
    $.each(data.newName,function(i,news){
        $.each(news,function(j,titles){
          var trcon = "<tr>";
             $.each(titles,function(k,detail){
                   var id = detail.id;
                   var name = detail.name;
                   var title_id = detail.title_id;
                   trcon += "<td>"+id+"</td><td>"+name+"</td><td>"+title_id+"</td>"; 
             });
             trcon += "<tr>";
           $('#mylist').append(trcon);
        });
    });  
     })

    </script><body>
    <table id='mylist'></table>
    </body>
      

  18.   

    回复于: 2013-04-11 11:45:26 
    你这个不是字符串数据嘛,
    如果是字符串可以像这样解析JavaScript code?1234 var a='{"rows":[{"id":1,"name":"32"}],total:23}'; alert(a); var obj = eval('('+a+')'); alert(obj.rows[0].id); 如果已经是json对象或数组对象,可以通过下面这个把它转换成json字符串
    JSON.stringify(变量);
      

  19.   

     eval("var obj= " + json + ";");
      

  20.   

    var myJson = eval('(+json字符串+)') 
      

  21.   

    var dataObj=eval("("+json字符串+")");  百度下eval方法就清楚了
      

  22.   

    var dataObj=eval("("+json字符串+")");  百度下eval方法就清楚了
      

  23.   

    var va = '{"newName":[{"Title [id=1, title=主页]":[]},{"Title [id=2, title=医疗产品]":[{"id":1,"name":"自动注射器","title_id":2},{"id":2,"name":"血压器","title_id":2},{"id":3,"name":"血糖仪","title_id":2}]},{"Title [id=3, title=智能家居]":[{"id":4,"name":"智能窗台","title_id":3},{"id":5,"name":"智能门","title_id":3},{"id":6,"name":"智能电灯","title_id":3},{"id":7,"name":"智能沙发","title_id":3}]},{"Title [id=4, title=技术支持]":[]},{"Title [id=5, title=公司简介]":[]}]}';
    alert(va);
    var obj = eval('(' + va + ')');
    alert(obj.newName.length); //第一层对象长度
    alert(JSON.stringify(obj.newName[1]));//获取第二个对象我只会解到这了,不好意思
    最后弹出的内容:
    {"Title [id=2, title=医疗产品]":[{"id":1,"name":"自动注射器","title_id":2},{"id":2,"name":"血压器","title_id":2},{"id":3,"name":"血糖仪","title_id":2}]}
    中我觉得“ ”是不是应该加给Title