jQuery怎么解析Json字符串

 我来答
Baby_原來
2015-12-29 · TA获得超过3402个赞
知道大有可为答主
回答量:1535
采纳率:94%
帮助的人:505万
展开全部
 ///jQuery 解析json字符串
  
  //解析复杂的json数组
  $("#jsonBtn").click(function(){
    var data=$(".jsonArray").html();
      alert("-----"+data);
    var dataObj=eval("("+data+")");//转换为json对象   
    alert(dataObj.root.length);//输出root的子对象数量  
    alert(dataObj.json.length);//输出json的子对象数量  
      
      //遍历json数组
      $.each(dataObj.root, function(i, item) {
        alert(item.name+"-----root-------"+item.value);
      });
      
      //遍历json数组
      $.each(dataObj.json, function(i, item) {
        alert(item.name+"-----json-------"+item.value);
      });
  });
  
    //解析单个的json数组
  $("#jsonArray2").click(function(){
    var data=$(".jsonArray2").html();
      alert("-----"+data);
    var dataObj=eval("("+data+")");//转换为json对象   
    alert(dataObj.length);//输出root的子对象数量  
      
      //遍历json数组
      $.each(dataObj, function(i, item) {
        alert(item.name+"-----jsonArray-------"+item.value);
      });
  });
  
  
  
  ///解析标准的Json串   方法一
  $("#jsonStr").click(function(){
  var json=$(".jsonText").html();
  alert("---2--"+json);
       var item = jQuery.parseJSON(json);
       alert(item.nickname);
       alert(item.ret);
       alert(item.figureurl );
    
  });
  
  ///解析标准的Json串,方法二
  $("#jsonStr2").click(function(){
  var json=$(".jsonText").html();
  alert("---2--"+json);
       var obj = eval("("+json+")");
       alert(obj.nickname);
       alert(obj.ret);
       alert(obj.figureurl );
    
  });

运行结果:

灵葬外与他29
2015-12-29 · TA获得超过2183个赞
知道小有建树答主
回答量:1221
采纳率:50%
帮助的人:951万
展开全部
//$.parseJson可以把字符串转成json对象
//但对字符串格式要求比较严格
$.parseJSON('{"name":"alex"}');        //正常
$.parseJSON("{'name':'alex'}");        //报错
$.parseJSON("{name:'alex'}");          //报错

//可以用js自带的eval实现转换,要求不是那么严格
eval("(" + '{"name":"alex"}' + ")");    //正常
eval("(" + "{'name':'alex'}" + ")");    //正常
eval("(" + "{name:'alex'}" + ")");      //正常

//$.parseJSON就是调用JSON.parse实现的,效果一样。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式