【发布时间】:2014-03-18 11:28:02
【问题描述】:
我需要解析这个 JSON 数据:
var myjson = {
{"groups":[
{"id":1,"title":"Title1"},
{"id":2,"title":"Title2"},
{"id":3,"title":"Title3"}
],
"dials":[
{"title":"Link1","url":"url1","idgroup":1},
{"title":"Link2","url":"url2","idgroup":2},
{"title":"Link3","url":"url3","idgroup":3},
{"title":"Link4","url":"url4","idgroup":1},
{"title":"Link5","url":"url5","idgroup":2},
{"title":"Link6","url":"url6","idgroup":3}
]}
};
我需要构建一个引导手风琴,在“组”中使用“拨号”,其中dials.idgroup 匹配groups.id。
解析“组”没有问题;为了构建手风琴标记,我使用:
$.each(myjson.groups, function (i, group) {
$grID = group.id;
$grTitre = group.title;
$constrAccordion = '<div class="panel panel-default"><div class="panel-heading"><h4 class="panel-title"><a data-toggle="collapse" data-parent="#accordion" href="#' + $grID + '">' + $grTitre + '</a></h4></div> <div id="' + $grID + '" class="panel-collapse collapse"><ul class="list-group"></ul></div></div>';
$('#liens #accordion').append($constrAccordion);
// #liens #accordion is my empty markup in my html file.
});
但我无法解析拨号。我试过 $.grep:
makeSpGroup = $.grep(myjson.dials, function (element, index) {
return element.idgroup === $grID;
});
【问题讨论】:
-
你可以使用 parseJSON(myjson) 可能是或看到link
-
我已经看过这个问题,它没有解释如何匹配来自两个不同数组的两个属性。
-
@elektrorl 您可以查看我的确切解决方案的答案
标签: jquery json multidimensional-array