jquery循环输出json数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jquery循环输出json数据相关的知识,希望对你有一定的参考价值。

参考技术A 判断键名即可。
根据查询相关公开信息显示,在循环当中判断键名,结合正则表达式判断正确即可。
jQuery是一个快速、简洁的javascript框架,是继Prototype之后又一个优秀的JavaScript代码库。

在KeyPair基础上的Jquery中循环json数据

【中文标题】在KeyPair基础上的Jquery中循环json数据【英文标题】:looping json data in Jquery on KeyPair base 【发布时间】:2015-10-07 02:18:57 【问题描述】:

大家好,下面是我从服务器得到的响应。我试图根据键循环它不幸的是我没有成功。

"metricsLevelList": [
"levelName": "Account1Name",
"levelId": 1,
"metrics":    [
        
     "value": "80",
     "greenZoneStart": "90",
     "greenZoneEnd": "100",
     "yellowZoneStart": "60",
     "yellowZoneEnd": "90",
     "redZoneStart": "0",
     "redZoneEnd": "60",
     "metricsType": "Dial",
     "metricsName": "FTR Deliverables"
  ,
        
     "value": "0",
     "greenZoneStart": "90",
     "greenZoneEnd": "100",
     "yellowZoneStart": "60",
     "yellowZoneEnd": "90",
     "redZoneStart": "0",
     "redZoneEnd": "60",
     "metricsType": "Dial",
     "metricsName": "OTD Deliverables"
  ,
        
     "value": "0",
     "greenZoneStart": "0",
     "greenZoneEnd": "5",
     "yellowZoneStart": "5",
     "yellowZoneEnd": "15",
     "redZoneStart": "15",
     "redZoneEnd": "100",
     "metricsType": "Dial",
     "metricsName": "% Defect Rejection"
  ,
        
     "value": null,
     "greenZoneStart": null,
     "greenZoneEnd": null,
     "yellowZoneStart": null,
     "yellowZoneEnd": null,
     "redZoneStart": null,
     "redZoneEnd": null,
     "metricsType": null,
     "metricsName": null
  ,
        
     "value": "0",
     "greenZoneStart": "90",
     "greenZoneEnd": "100",
     "yellowZoneStart": "70",
     "yellowZoneEnd": "90",
     "redZoneStart": "0",
     "redZoneEnd": "70",
     "metricsType": "Dial",
     "metricsName": "CSAT (% VoC)"
  
]
]

在这里,我必须循环metricsLevelList(我将有不同的级别名称)在另一个循环中的metrics(具有metrics内容)。有人请帮我解决这个问题。

【问题讨论】:

【参考方案1】:

您可以使用以下循环来迭代嵌套对象(假设您的 json 存储在名为 jsonDemo 的变量中):

function loop(obj) 
    $.each(obj, function(key, val) 
        if(val && typeof val === "object")  // object, call recursively
            console.log(" "); 
            loop(val);
         else 
            console.log(key + "-->" + obj[key]); 
        
    );


loop(jsonDemo);

见小提琴:“http://jsfiddle.net/pgo637dj/”

说明:这将遍历对象的所有键并检查每个键是否进一步是对象,如果是则递归调用它,否则将显示。

【讨论】:

感谢帮助的小伙伴【参考方案2】:

经过多次跟踪和错误后我得到了答案

var responseEle =$response;
var importantObject = responseEle.metricsLevelList[0];
for (var item in importantObject) 
var theDate = item; //the KEY
var theNumber = importantObject[item]; //the VALUE
if(item =='metrics')

$.each(theNumber, function(i, newItem)

);


【讨论】:

以上是关于jquery循环输出json数据的主要内容,如果未能解决你的问题,请参考以下文章

jquery怎么循环获取JSON中的数据?

如何将ajax请求返回的Json格式数据循环输出成table形式

使用循环在 HTML 中显示来自 jQuery.ajax 的 json 数据

在KeyPair基础上的Jquery中循环json数据

怎样从java后台获取json字符串并转换为json对象输出?

如何使用 Jquery 循环遍历此 JSON 数据以显示 klout 分数?